R可以处理多少数据?

时间:2011-04-03 05:53:20

标签: r large-data

“句柄”是指操纵多列数据行。 R如何与Excel,SPSS,SAS等工具叠加? R是查看“大数据”(数亿到数十亿行)的可行工具吗?如果不是,哪种统计编程工具最适合分析大数据集?

4 个答案:

答案 0 :(得分:17)

如果你看看CRAN上的High-Performance Computing Task View,你会很好地了解R在高性能方面可以做些什么。

答案 1 :(得分:10)

您可以在原则上存储与具有异常的RAM一样多的数据,目前,向量和矩阵限制为2 ^ 31 - 1个元素,因为R在向量上使用32位索引。一般向量(列表及其衍生数据帧)限制为2 ^ 31 - 1个组件,每个组件都有与向量/矩阵/列表/ data.frames等相同的限制。

当然这些是理论上的限制,如果你想对R中的数据做任何事情,它至少会不可避免地需要空间来保存几个副本,因为R通常会复制传入函数等的数据。

努力允许磁盘存储(而不是RAM);但即使是那些也只限于上面提到的2 ^ 31-1限制,在任何时候都在R中使用。请参阅链接到@ Roman帖子的高性能计算任务视图的大内存和内存不足数据部分。

答案 2 :(得分:4)

对于“大数据”适用性的一个很好的迹象可能是R已经成为参与Kaggle.com数据建模竞赛的开发者的首选平台。请参阅Revolution Analytics网站上的article - R以健康的优势击败SAS和SPSS。 R缺乏开箱即用的数字运算能力,显然弥补了灵活性。

除了the web上提供的内容之外,还有几本关于如何热销R来处理大数据的新书。 Art of R Programming(Matloff 2011; No Starch Press)提供了编写优化的R代码,并行计算以及将R与C结合使用的介绍。整本书都有很好的代码示例和演练。 Parallel R(McCallum& Weston 2011; O'Reilly)看起来也不错。

答案 3 :(得分:-1)

我将用R和大数据集来解释我的短篇小说 我有一个从R到RDBMS的连接器,

  • 我储存了80ml化合物。

我构建了一些查询,收集了这些数据的一些子集 然后操纵这个子集。
R只是在我的电脑上内存超过 200k 行的窒息。

  • core duo
  • 4 GB ram

因此,为机器设置一些合适的子集是一种很好的方法。