Корпусная функция. Ошибка в tm_map (..., PlainTextDocument) - PullRequest
0 голосов
/ 25 мая 2019

Я сосредотачиваюсь на чистке Твиттера. Для этого я использую пакет

library("twitteR")

Тогда я читаю твиты 1 Кб для # Привет.

mytweets = searchTwitter("#Hello", n=1000)

А теперь давайте воспользуемся функцией corpus:

library("tm")
mylist <- sapply(mytweets, function(x) x$getText())
mycorpus <- Corpus(VectorSource(mylist))
removeEmoticon <- function(x) gsub("[^\x01-\x7F]", " ", x)
mycorpus <- tm_map(mycorpus, removeEmoticon)
mycorpus <- tm_map(mycorpus, tolower) 
mycorpus <- tm_map(mycorpus, removePunctuation)
mycorpus <- tm_map(mycorpus,
                  function(x)removeWords(x,stopwords()))
mycorpus <- tm_map(mycorpus, PlainTextDocument)
wordcloud(mycorpus, min.freq=4, scale=c(5,1), 
      random.color=F, max.word=45, random.order=F)

В любом случае, после последней строки кода я получил следующую ошибку:

Error in simple_triplet_matrix(i, j, v, nrow = length(terms), ncol = length(corpus),  : 
 'i, j' invalid

Я заметил, что эта проблема исчезает, если я удаляю строку кода:

mycorpus <- tm_map(mycorpus, PlainTextDocument)

Почему? В любом случае, поскольку этот код строки является основополагающим для преобразования в обычный текст (который может использовать wordcloud), я хотел бы найти другой способ достижения этого результата.

...