【发布时间】:2018-12-31 17:42:18
【问题描述】:
给定一个列表(例如输出),我想将每个项目写入一个单独的 csv 文件以供其他地方使用。 该列表很大并且包含很多项目,所以我想使用 for 循环进行快捷方式。我创建了以下内容 根据数据组和日期为每个输出文件建立一个名称。当我运行它时,一切正常,除了它重命名列 使用列表项名称和现有的列名(例如,而不是 'week4' 我得到 'pygweek4'。我不希望它更改我的列名。
我尝试设置 col.names = TRUE,希望保留现有名称,并使用下面的代码指定名称, 以及设置 col.names = FALSE。在所有情况下,我都会收到一条警告消息,说“尝试设置'col.names'被忽略”。
谁能建议一种简单的方法来保留我已有的列名?
out <- list(pyg = structure(list(week4 = c("0", "1", "1", "0", "1"),
week5 = c("0", "1", "1", "1", "1"), week6 = c("0", "1", "0", "1", "1"),
week7 = c("0", "0", "0", "1", "1"), week8 = c("0", "1", "0", "1", "1")),
row.names = 281:285, class = "data.frame"),
saw = structure(list(week4 = c("0", "0", "0", "0", "0"),
week5 = c("0", "0", "0", "0", "0"), week6 = c("0", "0", "0", "0", "0"),
week7 = c("0", "0", "0", "0", "0"), week8 = c("0", "0", "0", "0", "1")),
row.names = c(NA, 5L), class = "data.frame"))
for(i in 1:length(out)){
n = paste(paste(names(out)[i],Sys.Date(), sep = "_"), ".csv", sep = "") # create set name and version control
write.csv(out[i], file = n, row.names = FALSE, col.names = c("week4", "week5", "week6", "week7", "week8"))
}
抱歉,缺少合适的标签...我没有设置我认为对这篇文章有用的标签的声誉,并且在可用的标签中找不到有意义的标签。
【问题讨论】: