gpt4 book ai didi

r - 如何将多个数据框导出到 CSV?

转载 作者:行者123 更新时间:2023-12-02 01:07:13 24 4
gpt4 key购买 nike

情况:我有几个数据框,我想将它们作为 CSV 文件导出到工作目录中以供进一步处理。

目标:使用单个函数(批量导出)将工作区中的数据帧集合作为 csv 文件导出到工作目录。

详细信息:

我的问题不是关于更改数据框的内容,因此您可以使用 R 提供的任何示例数据进行复制

我用来导出单个数据框的函数是

csvExport <- function(data, enc = 'utf8'){
name <- paste(deparse(substitute(data)), "csv", sep=".")
con <- file(name, encoding = enc)
write.csv(data, file = con, row.names=FALSE, quote = TRUE, sep = ";")
text<-"exported!"
print(paste(name, text, sep=" "))
}

因为我不喜欢调用每个数据框的函数来显式导出,所以我正在寻找一种方法来导出数据框,方法是指示我喜欢导出的工作区中的哪些数据框:

export <- ls()[1:20]

然后我尝试将此函数(带有 for 循环的一些变体)与上面的列表一起使用:

multipleCSVExport <- function(export){
for (i in export){
csvExport(i)
}
}

但是,我无法创建预期的结果。

最佳答案

您可以使用 mget 将工作区中的 data.frames 转换为 data.frame 列表,然后使用 lapplyfor 循环。

list_df <- mget(ls()[1:20])

lapply(seq_along(list_df),
function(i) write.table(list_df[[i]],
paste0(names(list_df)[i], ".csv"),
row.names = FALSE, quote = TRUE,
sep = ";", dec = "."))

关于r - 如何将多个数据框导出到 CSV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21142520/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com