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

时间: 2024-10-29 19:37:17

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

《R的极客理想——高级开发篇 A》一一2.4 R语言中的遗传算法

2.4 R语言中的遗传算法 问题 如何用R语言进行遗传算法的计算? 引言 人类总是在生活中摸索规律,把规律总结为经验,再把经验传给后人,让后人发现更多的规律,每一次知识的传递都是一次进化的过程,最终形成了人类的智慧.自然界的规律,让人类适者生存地活了下来,聪明的科学家又把生物进化的规律,总结成遗传算法,扩展到了更广的领域中.本节将带你走进遗传算法的世界.2.4.1 遗传算法介绍 遗传算法是一种解决最优化的搜索算法,是进化算法的一种.进化算法最初借鉴了达尔文的进化论和孟德尔的遗传学说,从生物进化的

《R语言编程艺术》——1.4 R语言中一些重要的数据结构

1.4 R语言中一些重要的数据结构 R有多种数据结构.本节将简单介绍几种常用的数据结构,使读者在深入细节之前先对R语言有个大概的认识.这样,读者至少可以开始尝试一些很有意义的例子,即使这些例子背后更多的细节还需要过一段时间才能揭晓.1.4.1 向量,R语言中的战斗机 向量类型是R语言的核心.很难想象R语言代码或者R交互式会话可以一点都不涉及向量. 向量的元素必须属于某种"模式"(mode),或者说是数据类型.一个向量可以由三个字符串组成(字符模式),或者由三个整数元素组成(整数模式),

《R的极客理想——高级开发篇 A》一一1.2 R语言中的数学计算

1.2 R语言中的数学计算 问题 如何用R语言进行数学计算? 引言 R语言是统计语言,生来就对数学有良好的支持,用R语言做数学的计算题特别方便.如果计算器中能嵌入R语言的计算函数,那么绝对是一种高科技产品.我真的把R语言当成我的计算器了!1.2.1 基本计算 R语言对数学计算有着非常好的支持,本节将完整介绍初等数学中的各种计算操作. 本节的系统环境是: Windows 7 64bit R: 3.1.1 x86_64-w64-mingw32/x64 (64-bit) 用R语言实现四则运算操作,包括

R语言中如何删除数据对象

  R语言中如何删除数据对象 首先需要打开R studio,新建文件脚本,[File]--[New Script]. 然后会发现,global environment这里之前代码留下的数据集非常麻烦,清除方法如下: 首先,写入 rm(A),即可清除相应object的数据(rm=remove).对比即可发现,之前的object已经被清除了. 想要一了百了,全部清除的时候,则输入代码:rm(list=ls()). 这段代码的含义是:清除全部对象,即用ls()列出全部对象名,用一个list将全部对象装

r语言-R语言中关于坐标轴的一些疑问

问题描述 R语言中关于坐标轴的一些疑问 本人初学者,正在根据一些数据用R重现图,但是现在碰到了这样的坐标轴 查了很多资料都没有找到答案,请问用R可以实现这样的坐标轴吗?要用什么函数呢?绘图我都是用plot的,求大神指教 解决方案 http://bbs.pinggu.org/thread-3566469-1-1.html 解决方案二: R语言 备忘录R语言-坐标轴画法要旨

R语言中不能进行深度学习?

更多深度文章,请关注:https://yq.aliyun.com/cloud 众所周知,R语言是统计分析最好用的语言.但在Keras和TensorFlow的帮助下,R语言也可以进行深度学习了. 在机器学习的语言的选择上,R和Python之间选择一直是一个有争议的话题.但随着深度学习的爆炸性增长,越来越多的人选择了Python,因为它有一个很大的深度学习库和框架,而R却没有(直到现在). 但是我就是想使用R语言进入深度学习空间,所以我就从Python领域转入到了R领域,继续我的深度学习的研究了.这

R语言学习路线和常用数据挖掘包

对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来.当然,这不是最好的学习方式,最好的方式是--看书.目前,市面上介绍R语言的书籍很多,中文英文都有.那么,众多书籍中,一个生手应该从哪一本着手呢?入门之后如何才能把自己练就成某个方面的高手呢?相信这是很多人心中的疑问.有这种疑问的人有福了,因为笔者将根据自己的经历总结一下R语言书籍的学习路线图以使Ruser少走些弯路. 本文分为6个部分,分别介绍初级入门,高级入门,绘图与可

R语言中的循环函数(Grouping Function)

R语言中有几个常用的函数,可以按组对数据进行处理,apply, lapply, sapply, tapply, mapply,等.这几个函数功能有些类似,下面介绍下这几个函数的用法. Apply 这是对一个Matrix或者Array进行某个维度的运算.其格式是: Apply(数据,维度Index,运算函数,函数的参数) 对于Matrix来说,其维度值为2,第二个参数维度Index中,1表示按行运算,2表示按列运算.下面举一个例子: m<-matrix(1:6,2,3) 构建一个简单的2行3列的矩

R语言中值得学习的7个可视化,附代码段&amp;案例数据集

R编程允许开发者通过一组内置的函数和库来构建可视化以描绘数据. 在分享可视化的技术实现之前,首先着眼如何选择合适的图表类型. 选择合适的图表类型 基本呈现类型有四种: Comparison Composition Distribution Relationship 为了确定哪一种与数据匹配,不妨先从以下几个方面考虑: 在一个图表中显示多少变量? 每个变量显示多少数据点? 基于时间显示值,还是在项目或组之间显示值? 下图恰到好处地描述了如何选择合适的图表类型,出自Andrew Abela博士之手.