我有6-10个数据帧对象,我想写出来。现在,我必须用write.table手动写出每一个。我想简化我的代码,循环遍历对象并把它们全部写出来。
我在这里尝试过以下建议:
Write to files in R using a loop
writing many files in a for loop using R
但是,我不断获得正确命名的文件,但如下所示:
> "x"
"1" "listdata_cent"下面是我的代码示例:
names(lst) <- (ls(pattern = "^listdata"))
lst <- as.list((ls(pattern = "^listdata")))
for (i in nam) {
write.table(i, file = paste(i, ".txt", sep = ""), col.names= TRUE, sep = "\t")
}如果你能提供任何帮助,我们将不胜感激。我肯定我错过了一些简单的东西。
发布于 2016-12-20 22:20:15
多亏了尼克·克里斯威尔理查德·泰福德和格雷戈。我想出了一个解决办法。
datalist = lapply(ls(pattern = "^listdata"), get)
names(datalist) <- (ls(pattern = "^listdata"))
for (i in 1:length(datalist)) {
write.table(datalist[i], file = paste(names(datalist[i]), ".txt", sep = ""), col.names= TRUE, sep = "\t", quote=FALSE)
}看起来这可能和这个问题有关。-尼克·克里斯韦尔4小时前 我就是那个名字。我会在4小时前找到那个物体 最好的做法不是让一堆数据帧在周围浮动,而是有一个数据帧列表。如果数据帧在列表中,问题就会变得很小。-格雷戈4小时前
https://stackoverflow.com/questions/41248090
复制相似问题