从非常大的Rdata文件中获取单个对象

从非常大的Rdata文件中获取单个对象,r,object,rdata,R,Object,Rdata,我试图从同一环境中的不同RData文件中获取单个对象(数据帧),这些RData文件都非常大,因此无法加载。我收到错误消息,由于内存问题,无法分配向量。我已经尝试了几乎所有以前的建议与'懒惰加载',附加等,但他们似乎没有工作,因为内存限制被超过 下面您可以看到我正在尝试做的一个示例: rm(list=ls()) tmp.env<-new.env() attach("~/Data/results/chunk1.RData") a1<-get("a1", pos=t

我试图从同一环境中的不同RData文件中获取单个对象(数据帧),这些RData文件都非常大,因此无法加载。我收到错误消息,由于内存问题,无法分配向量。我已经尝试了几乎所有以前的建议与'懒惰加载',附加等,但他们似乎没有工作,因为内存限制被超过

下面您可以看到我正在尝试做的一个示例:

   rm(list=ls())
   tmp.env<-new.env()
   attach("~/Data/results/chunk1.RData")
   a1<-get("a1", pos=tmp.env)
   attach("~/Data/results/chunk2.RData")
   a2<-get("a2", pos=tmp.env)
   attach("~/Data/results/chunk3.RData")
   a3<-get("a3", pos=tmp.env)
rm(list=ls())

tmp.env能否使用
load
将一个RData文件加载到您的工作区中?如果您能提供指向“以前的建议”的链接也很好。只需使用
saveRDS()
readRDS()
——同样有效地避免这个问题,但每个对象有一个文件管理器。@zx8754这些建议在我的例子中不起作用:@zx8754可以加载一个RData文件,但不能加载第二个。。然后可以循环使用RData,并使用
load();获取对象;rm();gc()
?能否使用
load
将一个RData文件加载到您的工作区中?如果您能提供指向“以前的建议”的链接也很好。只需使用
saveRDS()
readRDS()
——同样有效地避免这个问题,但每个对象有一个文件管理器。@zx8754这些建议在我的例子中不起作用:@zx8754可以加载一个RData文件,但不能加载第二个。。然后可以循环使用RData,并使用
load();获取对象;rm();gc()