R语言究竟能不能处理大数据,其实这个问题的答案取决于你怎样定义所需处理的大数据。R是一种语言,同时也是一种工具,并且是运行在电脑上的,运行的结果也受到电脑的性能影响。那么既然要处理大数据,关键在于如何提高使用R语言处理分析数据的效率。
简单说,有三点:
1)使用运行速度更快的电脑;
2)学习使用各种高效的package;
3)使用Revolution R代替原生的R程序。
第一点暂不讨论,从第二点说起吧。
1. 适合处理大数据的R package
众所周知,R语言的主要优势在于各种包,有的包可以极大的提高工作效率,个人最常用的3个包:和data.table、Rcpp(+RArmadillo)和parallel。
R里面最重要的内置数据类型就是data.frame了,data.frame本质是一个list,因为list是不要求元素的类型一致,所以data.frame可以存储不同类型的数据在不同的column中。
2. Revolution R
Revolution R是什么?Revolution Analytics是一家公司,在不久前被微软收购,这个公司在R基础上开发了Revolution R。Revolution R有什么优势呢?R本身是单线程的,为了利用多核心cpu,可以用各种并行计算包,如上面提起的parallel/snow等。但是这些都要写额外的代码,那么有没有不用修改任何代码来提高运行效率的办法呢?有,Revolution R就是一个解决方案。
3 MS R Server
上面的两点可以处理比较大的数据,但是并没有质变,不能实现可测量性,如果真的有非常大的数据,建议使用微软推出的MS R server。
关于R语言,小编也为大家准备了R语言相关的学习资料。希望在大数据R语言方向发展并感兴趣的同学可以私信小编获取资料。
领取专属 10元无门槛券
私享最新 技术干货