R语言中的哪些命令或者包让你相见恨晚

简介:

我从开始学R到现在一直都在发现“相见恨晚”的R包。

分析与建模:
Matrix包:先进的稀疏矩阵处理,不了解稀疏矩阵概念的时候内存占用和运行速度都不忍直视。
Reshape2/ddply:数据处理不用愁。
*apply系列:比for更好用的函数,其中tapply远不如lapply流行,但是实用程度不在其下。实际上lapply有没有变快得看各人的实现,因为虽然lapply调用了C实现,但是它还是要回头调用在R里用户定义的函数才能做计算,这个函数速度如何才是关键。
compiler包:即使代码里有for也可以加速。
foreach:通用的并行接口,跨平台多功能。
lubridate:处理时间日期格式不求人。
gbm:效果和randomForest相近,但是占用内存很少很幸福,而且支持多核 CrossValidation 运算。
stats::optim():做优化的最傻瓜选择。不信看这个三行R代码做出SVM:weibo.com/1459604443/A3,不懂牛顿法也没关系。

报告与可视化:
knitr/slidify:knitr是 @谢益辉 的代表作。做报告、幻灯片 so easy,但是slidify的作者不喜欢写文档,所以很头疼。
shiny:用R生成Web App,后端强劲接口统一。例如:hetong.shinyapps.io/img 。
recharts:在R中方便快捷地生成可交互图形,再也不用从R换到js了。

其他:
devtools::install_github():脱离CRAN强权统治,Github让世界更美好。
base::match():很多情况下比which,is.element不知高到哪里去了。
utils::read.table():设置nrows能提前分配内存,设置comment.char=""与colClasses更能加快读入。
OpenBLAS库:虽然不是R包,但是多核CPU上对矩阵运算的加速效果实在是太方便明显了,而且Ubuntu上安装方便,并不需要重新编译R。
定义启动项:如果对stringsAsFactors永远默认为TRUE深痛恶觉,可以修改Rprofile.site文件,加上每次启动都自动运行的命令。 @任坤 在评论中提到:定义启动项比较危险,不注意的话会使得代码的可移植性出现问题哦,放到别人电脑上一运行发现各种factor。
升级R包:R的版本更迭之后,可以把老R包复制到新版本的library目录下,然后运行 update.packages(checkBuilt=TRUE, ask=FALSE) ,这是官方的提示,放在FAQ里,不知道有多少人留意了:R for Windows FAQ
本文作者:佚名
来源:51CTO

相关文章
|
1月前
|
机器学习/深度学习 数据可视化 算法
从零到精通:学习这些R语言必学包成为数据分析高手!
从零到精通:学习这些R语言必学包成为数据分析高手!
35 0
|
8月前
R语言之 dplyr 包
R语言之 dplyr 包
65 1
|
4月前
|
存储 人工智能 搜索推荐
R语言Ternary包绘制三元图、RGB三色空间分布图的方法
R语言Ternary包绘制三元图、RGB三色空间分布图的方法
|
4月前
|
定位技术
R语言GD包地理探测器分析时报错、得不到结果等情况的解决方案
R语言GD包地理探测器分析时报错、得不到结果等情况的解决方案
|
4月前
|
定位技术 Python
R语言raster包批量拼接、融合大量栅格图像
R语言raster包批量拼接、融合大量栅格图像
|
4月前
|
定位技术 Python
R语言raster包遍历多个文件夹并批量计算每一个文件夹下全部遥感影像的平均值
R语言raster包遍历多个文件夹并批量计算每一个文件夹下全部遥感影像的平均值
|
4月前
|
定位技术
R语言raster包计算多个栅格图像平均值、标准差的方法
R语言raster包计算多个栅格图像平均值、标准差的方法
|
4月前
|
存储 数据可视化 定位技术
R语言GD包基于栅格图像实现地理探测器与连续参数的自动离散化
R语言GD包基于栅格图像实现地理探测器与连续参数的自动离散化
|
4月前
|
数据采集 定位技术
R语言geodetector包基于栅格图像实现地理探测器操作
R语言geodetector包基于栅格图像实现地理探测器操作
|
4月前
|
Serverless 定位技术 C++
R语言raster包批量读取单一或大量栅格图像
R语言raster包批量读取单一或大量栅格图像