R 试图从大mcmc.list中提取时内存耗尽
试图从大R 试图从大mcmc.list中提取时内存耗尽,r,winbugs,jags,r-coda,R,Winbugs,Jags,R Coda,试图从大mcmc.list中提取单个变量时遇到问题: > x <- outRJ$mcmc[,'avail_int'] Error: cannot allocate vector of size 146.8 Mb 但是单个变量应该只有234KB!但是提取它似乎需要更多的记忆 如何在不需要太多内存的情况下从大型mcmc.list中提取内容?我认为这应该可以: x <- as.mcmc.list(lapply(outRJ$mcmc, function(x) return(x[,'
mcmc.list
中提取单个变量时遇到问题:
> x <- outRJ$mcmc[,'avail_int']
Error: cannot allocate vector of size 146.8 Mb
但是单个变量应该只有234KB!但是提取它似乎需要更多的记忆
如何在不需要太多内存的情况下从大型mcmc.list中提取内容?我认为这应该可以:
x <- as.mcmc.list(lapply(outRJ$mcmc, function(x) return(x[,'avail_int',drop=FALSE])))
x当前的子集代码(在函数[.mcmc.list中)在子集之前对列表的每个元素进行复制。我已经在coda的开发版本中修改了代码。与此同时,Matt的解决方法应该可以做到,因为它还避免了冗余副本
x <- as.mcmc.list(lapply(outRJ$mcmc, function(x) return(x[,'avail_int',drop=FALSE])))