我最近发现了包的奇迹bigmemory
,ff
并filehash
处理了非常大的矩阵.
如何处理非常大的(300MB ++)列表?在我的工作中,我每天都在使用这些列表.我可以在任何地方使用save()
和load()
黑客进行创可贴解决方案,但我更喜欢类似bigmemory
解决方案.类似于a的东西bigmemory
bigmatrix
是理想的,我使用它基本上与a相同,matrix
除了它占用了我的RAM中的660字节.
这些列表主要>1000
是lm()
对象的长度列表(或类似的回归对象).例如,
Y <- rnorm(1000) ; X <- rnorm(1000)
A <- lapply(1:6000, function(i) lm(Y~X))
B <- lapply(1:6000, function(i) lm(Y~X))
C <- lapply(1:6000, function(i) lm(Y~X))
D <- lapply(1:6000, function(i) lm(Y~X))
E <- lapply(1:6000, function(i) lm(Y~X))
F <- lapply(1:6000, function(i) lm(Y~X))
Run Code Online (Sandbox Code Playgroud)
在我的项目中,我将拥有A,B,C,D,E,F
-type列表(甚至更多),我必须以交互方式工作.
如果这些是巨大的矩阵,那就有一吨支持.我想知道在大型list
对象的任何包中是否有任何类似的支持.
我有一个25 col和〜1M行的数据帧组合,分成12个文件,现在我需要导入它们然后使用一些reshape
包进行一些数据管理.每个文件都太大了,我不得不寻找一些用于导入和数据处理的"非RAM"解决方案,目前我不需要做任何回归,我将只有一些关于数据帧的描述性统计数据.
我搜索了一下,找到了两个包:ff
并且filehash
,我先阅读filehash
手册,发现它看起来很简单,只是在将数据帧导入文件时添加了一些代码,其余的似乎与通常的R操作类似.
我还没有尝试过ff
,因为它有很多不同的课程,我想知道ff
在我的实际工作开始之前是否值得投入时间来理解自己.但是filehash
包装在某些时候似乎是静态的,并且关于这个包装的讨论很少,我想知道它filehash
是否变得不那么流行,甚至变得过时了.
谁能帮我选择使用哪个包?或者任何人都可以告诉我他们之间的区别/利弊是什么?谢谢.
我目前正在使用filehash
导入数据帧,并意识到它导入的数据帧filehash
应被视为只读,因为该数据帧中的所有进一步修改都不会存储回文件,除非你再次保存,这不是很方便在我看来,因为我需要提醒自己要做到拯救.对此有何评论?