使用数组中的变量名来标识数据并将其保存到文件中

时间:2014-02-19 22:43:14

标签: r

我在R中有一系列data.frames,我想保存为文本文件,以便我可以与他人分享。

让我们调用data.frames a, b, c等。我可以编写一个简单的循环来保存它们:

for (mydata in c("a",
                 "b",
                 "c")){
  write.csv(x = get(mydata),
            file = file.path("datadump",paste0(mydata,".csv")))  
}

但是,我要保存的其他一些数据是列表; l1, l3, l4等我想使用相同的方法来保存数据,但我无法弄清楚如何只保存一个元素。例如,

for (mydata in c("a",
                 "b",
                 "l1$x")){
  write.csv(x = get(mydata),
            file = file.path("datadump",paste0(mydata,".csv")))  
}

返回错误:Error in get(mydata) : object 'l1$x' not found。我也尝试将列表称为l1[[x]],但这也不起作用。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

尝试使用eval(parse(text = "l1$x"))

(谢谢)