Для этого не нужно использовать tm
, вот воспроизводимый пример, который создает файл CSV с 6000 строками и двумя столбцами, считывает его, а затем превращает в 6000 файлов txt.
Сначала подготовьте некоторые данные для примера...
# from http://hipsum.co/?paras=4&type=hipster-centric
txt <- "Brunch single-origin coffee photo booth, meggings fixie stumptown pickled mumblecore slow-carb aesthetic ennui Odd Future blog plaid Bushwick. Seitan keffiyeh hashtag Portland, kitsch irony authentic vegan post-ironic. Actually pop-up flexitarian kale chips ethical authentic, stumptown meggings. Photo booth Helvetica farm-to-table Neutra. Selfies blog swag, lomo viral meh chillwave distillery deep v Truffaut. Squid Cosby sweater irony, art party mustache Vice Wes Anderson Bushwick McSweeney's locavore roof party paleo. 3 wolf moon salvia gentrify, taxidermy street art banh mi Portland deep v small batch Truffaut."
# get n random samples of this paragraph
n <- 6000
txt_split <- unlist(strsplit(txt, split = " "))
txts <- sapply(1:n, function(i) paste(sample(txt_split, 10, replace = TRUE),
collapse = " "))
# make dataframe then CSV file, two cols, n rows.
my_csv <- data.frame( col_one = 1:n,
col_two = txts)
write.csv(my_csv, "my_csv.csv", row.names = FALSE, quote = TRUE)
Теперь у нас есть файл CSV, который может быть похож на ваш, мы можем прочитать его в:
# Read in the CSV file...
x <- read.csv("my_csv.csv", header = TRUE, stringsAsFactors = FALSE)
И теперь мы можем записать каждую строку CSV-файла в отдельный текстовый файл (они появятся в вашем рабочем каталоге):
# Write each row of the CSV to a txt file
sapply(1:nrow(x), function(i) write.table(paste(x[i,], collapse = " "),
paste0("my_txt_", i, ".txt"),
col.names = FALSE, row.names = FALSE))
Если вы действительно хотите использовать tm
, вы были на правильном пути, это отлично работает для меня:
# Read in the CSV file...
x <- read.csv("my_csv.csv", header = TRUE, stringsAsFactors = FALSE)
library(tm)
my_corpus <- Corpus(DataframeSource(x))
writeCorpus(my_corpus)
И ближе к вашему примеру у меня тоже отлично работает:
corp <- Corpus(VectorSource(x$col_one))
writeCorpus(corp)
Если это не работает для вас, это может быть что-то необычное в вашем CSV-файле, какие-то странные символы и так далее. Без более подробной информации о вашей конкретной проблеме трудно сказать.
person
Ben
schedule
02.11.2014