我试图在R中创建一个大的矩阵,并用一个拟合模型的预测值填充它。我在远程服务器上创建了矩阵,并使用for循环来填充它。
library("bigmemory")
pred = filebacked.big.matrix(nrow=50000,ncol=150000,backingfile="pred.bin",descriptorfile="pred.desc",backingpath="~/pred")
for(i in 1:nrow(data)){
pred[i,] = as.vector(intercept+beta%*%data[i,])
}实际的.bin文件位于远程服务器上。然而,在我的计算机上,填充矩阵的过程仍然占用了大量的物理内存。我怎么才能避免这种情况?
发布于 2013-12-30 18:28:28
我希望我能正确理解你!
填充矩阵需要计算机上的大量物理内存,因为计算是在计算机上进行的。
如果我看得对,你可以这样想:如果我让你计算一些东西,并把它写在我的一张纸上,你的整个计算过程仍在“你的大脑”中;但结果在我的纸上;
那么,如何避免这样的情况:在server上设置一个r运行时,然后让服务器计算!服务器应执行“填写数据-进程”;
https://stackoverflow.com/questions/20844853
复制相似问题