R 将列表中的所有数据帧保存到单独的.csv文件中
我有一个要保存到独立.csv文件的数据帧列表 目前,我对每个数据帧都有一个新行:R 将列表中的所有数据帧保存到单独的.csv文件中,r,list,dataframe,export-to-csv,R,List,Dataframe,Export To Csv,我有一个要保存到独立.csv文件的数据帧列表 目前,我对每个数据帧都有一个新行: write.csv(lst$df1, "C:/Users/.../df1") write.csv(lst$df2, "C:/Users/.../df2") ad nauseam 显然,这并不理想:名称的更改意味着检查每一个案例并对其进行更新。我考虑过使用类似于 lapply(lst, f(x) write.csv(x, "C:/Users/.../x") 但这显然行不通。如何将列表中的每个数据帧保存为单独的.
write.csv(lst$df1, "C:/Users/.../df1")
write.csv(lst$df2, "C:/Users/.../df2")
ad nauseam
显然,这并不理想:名称的更改意味着检查每一个案例并对其进行更新。我考虑过使用类似于
lapply(lst, f(x) write.csv(x, "C:/Users/.../x")
但这显然行不通。如何将列表中的每个数据帧保存为单独的.csv文件?您可以执行以下操作:
N <- names(lst)
for (i in seq_along(N)) write.csv(lst[[i]], file=paste0("C:/Users/.../"), N[i], ".csv")
或
mappy
函数及其Map
包装器是lappy
的多参数版本。您有data.frame
s的列表;您需要构建一个文件名向量。像这样:
filenames<-paste0("C:/Users/.../",names(lst), ".csv")
Map(write.csv,lst,filenames)
由于您还可以按名称访问列表项,因此您甚至可以迭代名称本身。
lapply(names(lst), function(df) write.csv(lst[[df]], file=paste0("C:/Users/.../"), df, ".csv") )
filenames<-paste0("C:/Users/.../",names(lst), ".csv")
Map(write.csv,lst,filenames)
list(write.csv(lst[[1]],filenames[[1]]),write.csv(lst[[2]],filenames[[2]]),...)