Недавно я обнаружил чудеса пакетов bigmemory
, ff
и filehash
для обработки очень больших матриц.
Как я могу обрабатывать очень большие (300 МБ++) списки? В своей работе я работаю с этими списками весь день каждый день. Я могу сделать временное решение с помощью save()
и load()
хаков везде, но я бы предпочел решение, подобное bigmemory
. Что-то вроде bigmemory
bigmatrix
было бы идеальным, когда я работаю с ним в основном так же, как matrix
, за исключением того, что он занимает около 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))
В моем проекте у меня будут списки типа A,B,C,D,E,F
(и даже больше), с которыми мне придется работать в интерактивном режиме.
Если бы это были гигантские матрицы, то была бы тонна поддержки. Мне было интересно, есть ли подобная поддержка в каком-либо пакете для больших объектов list
.
"lm"
? Если бы нужны были, скажем, только коэффициенты, то можно было бы представить каждый список 'lm' объектов в виде матрицы. Также вы можете использовать более быстрыйlm.fit
:sapply(1:6000, function(i) coef(lm.fit(cbind(1, X), Y)))
- person G. Grothendieck   schedule 26.09.2012rq()
и других подобных объектов, где этот тип решения недоступен. - person Jase   schedule 26.09.2012sapply(1:3, function(i) coef(rq.fit(cbind(1, X), Y)))
- person G. Grothendieck   schedule 26.09.2012