Я пытаюсь найти частоту каждого термина в речи Мартина Лютера Кинга «У меня есть мечта». Я преобразовал все прописные буквы в строчные и удалил все стоп-слова. У меня есть текст в файле .txt, поэтому я не могу отобразить его здесь. Код, который читается в файле, приведен ниже:
speech <- readLines(speech.txt)
Затем я успешно выполнил преобразование в нижний регистр и удаление стоп-слов и назвал это:
clean.speech
Теперь у меня возникли некоторые проблемы с поиском частоты за термин. Я создал корпус, проверил свой корпус и создал TermDocumentMatrix следующим образом:
myCorpus <- Corpus(VectorSource(clean.speech))
inspect(myCorpus)
TDM <- TermDocumentMatrix(myCorpus)
Все в порядке до этого момента. Однако затем я написал следующий код и получил предупреждающее сообщение:
m < as.matrix(TDM)
Warning Message:
"In m < as.matrix(TDM): longer object length is not a multiple of shorter object length
Я знаю, что это очень распространенное предупреждающее сообщение, поэтому я сначала погуглил, но не смог найти ничего, касающегося частотности терминов. Я начал запускать следующий текст, чтобы посмотреть, будет ли он работать с предупреждающим сообщением, но этого не произошло.
v <- sort(rowSums(m), decreasing = TRUE)
d <- data.frame(word=names(v), freq=v)
head(d, 15)
Моя цель - просто найти частоту терминов. Я искренне извиняюсь за этот вопрос, потому что я знаю, что этот вопрос часто задают. Я просто не понимаю, что нужно изменить в моем коде. Спасибо всем, я ценю это!