Я пытаюсь извлечь информацию о дате из нескольких текстовых файлов, используя str_extract_all.Если я делаю один файл, он работает нормально.Но когда я вставляю его в цикл for, он выдает мне эту ошибку.
Я уже пробовал «в любое время», и это не работает, и ни один из других основных инструментов извлечения времени не работает.
Вот часть кода, которая доставляет мне неприятности:
file.names <- list.files(path = "C:/Users/jwils/Documents/R/win-library/3.6/CNN_files/AC360", pattern = "txt$")
for(i in 1:length(file.names)){
named <- read.table(file.names[i], header=FALSE, sep="", fill = TRUE)
renamed <- corpus(file.names[i])
date <- str_extract_all(texts(renamed)
, "(\\b(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|Jun(?:e)?|Jul(?:y)?|Aug(?:ust)?|Sep(?:tember)?|Nov(?:ember)?|Oct(?:ober)?|Dec(?:ember)?) (?:19[7-9]\\d|2\\d{3})(?=\\D|$))|(\\b(?:JAN(?:UARY)?|FEB(?:RUARY)?|MAR(?:CH)?|APR(?:IL)?|MAY|JUN(?:E)?|JUL(?:Y)?|AUG(?:UST)?|SEP(?:TEMBER)?|NOV(?:EMBER)?|OCT(?:OBER)?|DEC(?:EMBER)?) (?:19[7-9]\\d|2\\d{3})(?=\\D|$))|((Jan(uary)?|Feb(ruary)?|Mar(ch)?|Apr(il)?|May|Jun(e)?|Jul(y)?|Aug(ust)?|Sep(tember)?|Oct(ober)?|Nov(ember)?|Dec(ember)?)\\s+\\d{1,2},\\s+\\d{4})|(\\b(JAN(UARY)?|FEB(RUARY)?|MAR(CH)?|APR(IL)?|MAY|JUN(E)?|JUL(Y)?|AUG(UST)?|SEP(TEMBER)?|OCT(OBER)?|NOV(EMBER)?|DEC(EMBER)?)\\s+\\d{1,2},\\s+\\d{4})"
, simplify = TRUE)[,1]
}
Я ожидаю, что этот код извлечет дату из серии текстовых файлов, которые выглядят как
"Дата Передача 12 декабря 2018 года в текстовом виде - набор текста из стенограммы"
То, что я получаю, это сообщение об ошибке "индекс за пределами границ".Я не знаю, что это значит.Как я уже сказал, он работает с одним файлом, но не в цикле.Спасибо за любую помощь.