我有一个包含两个数据框的列表.我想循环遍历列表并为每个数据帧写一个CSV,并在数据帧名称后面命名.
library(ggplot2)
myList <- list(diamonds, cars)
for(i in mylist){
write.csv(df, paste0(names(myList[i]),".csv"))
}
Run Code Online (Sandbox Code Playgroud)
但这只输出一个.csv带有数据的CSV文件名cars.
我该如何解决这个问题,因此我有两个名为CSV的CSV diamonds.csv并且cars.csv每个都有正确的数据?
Ben*_*min 11
一些事情.
myList 没有任何名称,因此您实际上并没有命名您的文件.myList名字,你最好沿着名字而不是沿着名单进行索引df在for循环中使用,但没有在任何地方定义.这应该工作(未经测试)
myList <- list(diamonds = diamonds,
cars = cars)
for(i in names(mylist)){
write.csv(myList[[i]], paste0(i,".csv"))
}
Run Code Online (Sandbox Code Playgroud)
您也可以使用mapply:
myList <- list(diamonds = diamonds,
cars = cars)
mapply(write.csv, myList, file=paste0(names(myList), '.csv'))
Run Code Online (Sandbox Code Playgroud)