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

发布时间: 2015-08-17 阅读数: 4554

本文作者:何通,SupStat公司数据科学家,加拿大Simon Fraser University计算机学院研究生,研究兴趣为数据挖掘和生物信息学。转载请注明本文原链接 http://www.xueqing.tv/cms/article/view/id/16

分析与建模

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

报告与可视化

  • knitr/slidify:knitr是 @谢益辉 的代表作。做报告、幻灯片 so easy,但是slidify的作者不喜欢写文档,所以很头疼。
  • shiny:用R生成Web App,后端强劲接口统一。例如:https://hetong.shinyapps.io/imgsvd
  • 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
分享到:
热门文章

REmap发布,用R绘制百度迁徙图

2015年07月23日更新 21685次阅读

学习R语言,一篇文章让你从懵圈到入

2016年05月09日更新 15365次阅读

在R中填充缺失数据—mice包

2015年12月31日更新 11787次阅读

清华大学教授:大数据时代 统计学依

2015年08月07日更新 11477次阅读

精通 R plot—第一部分:颜色

2016年01月20日更新 10689次阅读

学习Tableau的六大好处(一个

2015年12月24日更新 8575次阅读
热门课程

R语言初级课程

2015年02月20日发布 3293名学员

R语言高效数据清理工具包dplyr

2015年08月30日发布 1724名学员

R语言数据分析入门

2016年05月10日发布 1618名学员

如何用R做数据预处理

2016年06月03日发布 1178名学员

全栈数据工程师养成攻略

2016年11月08日发布 1068名学员

R语言大规模数据分析实战

2015年12月17日发布 959名学员
登录 注册