Экспорт отдельных текстовых файлов из списка в 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, содержимое которого "здесь есть текст"
letter2.txt, содержимое которого "а вот еще текст"
letter3.txt, содержимое которого "и это последний"

Я полагаю, что я должен использовать цикл. Тем не менее, я не знаю, как выйти за рамки этого:

for (i in 1:length(list)){

}

2 ответа

Решение

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)
}
Другие вопросы по тегам