我试图循环访问一个字符向量,并为每个值运行稍有不同的查询。然后我想要捕获结果,并将它们保存为rdata文件。一旦保存,我可以删除R对象。在循环中动态命名已保存的对象
我知道,我应该为应用/ sapply做这一点,并希望了解如何做到这一点小费...
不过,我的主要问题是,虽然RDATA文件保存很好用的名字我希望(即“TABLE1”,“TABLE2”),当我将它们加载回R中时,它们都具有“thisname”的对象名称,并具有与我希望的名称相对应的单个值“表格1”)。我一直试图做这个工作太久。
如果有人有建议,我会很感激!
tables = c('TABLE1','TABLE2')
for (i in 1:length(tables)){
thisname=paste0(tables[i])
data= sqlQuery(oracle.channel, paste("select * from",table_renamer(tables[i]),"WHERE ROWNUM<10;"))
assign(thisname,data)
save(thisname, file=file.path(paste0(tables[i],".RData")))
rm(thisname)
rm(thisdf)
}
感谢您寻找。我无法使用saveRDS(),因为我的包要求通过data()加载数据,这限制了我的.RData和rda文件。 最后我在堆栈溢出中发现了一个解决方案,并将我的问题标记为重复。如果有人发现这篇文章,我会在下面发布我的最终解决方案。 –
gruvn