【发布时间】:2020-01-10 04:54:22
【问题描述】:
目录结构为:
data -> topic1 -> question1 -> sheetName.csv
-> question2 -> sheetName.csv
...
-> topic2 -> question1 -> sheetName.csv
-> question2 -> sheetName.csv
...
我想要每个“主题”的 excel 文件的输出。在每个文件中,都有与该主题中的 sheetName.csv 相对应的工作表。例如。一个名为:topic1.xlsx 的 excel 文件,包含 3 张工作表,对应主题 1 中的 3 个 sheetName.csv 文件。
但我也想保留原始 .csv 文件中的工作表名称。请注意,“sheetName”是随机的(即不遵循任何模式)。
这是我目前尝试过的代码:
library(readxl)
library(writexl)
library(dplyr)
pathName <- "/data/"
topicName <- list.files(path = pathName)
for(i in 1:length(topicName)) {
topicPath <- paste(pathName, topicName[[i]], sep = "")
files_to_read = list.files(
path = topicPath,
pattern = '*.csv',
recursive = TRUE,
full.names = TRUE
)
data_lst <- list()
data_lst <- lapply(files_to_read, read.csv)
setwd(pathName)
write_xlsx(data_lst, path = paste(topicName[[i]], ".", "xlsx", sep = ""))
}
我得到的输出是每个主题的 excel 文件以及相应的 csv 工作表,但工作表名称是“工作表 1、工作表 2 等......”。有没有办法在写入 excel 文件时保留工作表名称?
【问题讨论】: