从 R 中的列表导出单独的文本文件
Export separate texts files from list in R
我有一个包含 4951 个命名元素的大列表。这些元素中的每一个基本上都是字母(也就是说,它们是字符串字符)。我想做的是将列表中的每个元素导出为单独的文本文件,文件名与其在列表中的名称相对应。
我拥有的一个简单版本是这样的:
letter1 <- c("here is some text")
letter2 <- c("and here is some more text")
letter3 <- c("and this is the final one")
list <- list(letter1 = letter1, letter2 = letter2, letter3 = letter3)
我想要以下内容:
letter1.txt,内容为"here is some text"
letter2.txt,内容为"and here is some more text"
letter3.txt,内容为"and this is the final one"
我想我应该使用循环。但是,我不知道如何超越这个:
for (i in 1:length(list)){
}
for (i in 1:length(list)) {
write.csv(list[i], file=paste0(names(list)[i], ".txt"))
}
编辑
如果需要函数中的输出目录:
write.csv(list[i], file=paste0("output/", names(list)[i], ".txt"))
试试这个:
filenames <- names(list)
for (i in 1:length(list)){
outname <- paste("c:/testFolder/", filenames[i], ".txt", sep= "")
write.table(list[[i]], outname, col.names= F, row.names= F, quote= F)
}
我有一个包含 4951 个命名元素的大列表。这些元素中的每一个基本上都是字母(也就是说,它们是字符串字符)。我想做的是将列表中的每个元素导出为单独的文本文件,文件名与其在列表中的名称相对应。
我拥有的一个简单版本是这样的:
letter1 <- c("here is some text")
letter2 <- c("and here is some more text")
letter3 <- c("and this is the final one")
list <- list(letter1 = letter1, letter2 = letter2, letter3 = letter3)
我想要以下内容:
letter1.txt,内容为"here is some text"
letter2.txt,内容为"and here is some more text"
letter3.txt,内容为"and this is the final one"
我想我应该使用循环。但是,我不知道如何超越这个:
for (i in 1:length(list)){
}
for (i in 1:length(list)) {
write.csv(list[i], file=paste0(names(list)[i], ".txt"))
}
编辑
如果需要函数中的输出目录:
write.csv(list[i], file=paste0("output/", names(list)[i], ".txt"))
试试这个:
filenames <- names(list)
for (i in 1:length(list)){
outname <- paste("c:/testFolder/", filenames[i], ".txt", sep= "")
write.table(list[[i]], outname, col.names= F, row.names= F, quote= F)
}