R: TermDocumentMatrix - ошибка при создании

Я пытаюсь получить данные из твиттера и создать облако слов, но мой код выдает ошибку при создании TermDocumentMatrix. Мой код, как показано ниже

twitter_search_data <- searchTwitter(searchString = text_to_search
                                    ,n = 500)

twitter_search_text <- sapply(twitter_search_data
                             ,function(x) x$getText())

twitter_search_corpus <- Corpus(VectorSource(twitter_search_text))

twitter_search_corpus <- tm_map(twitter_search_corpus, stripWhitespace, lazy = TRUE)

twitter_search_corpus <- tm_map(twitter_search_corpus, content_transformer(tolower), lazy = TRUE)

twitter_search_corpus <- tm_map(twitter_search_corpus, PlainTextDocument,lazy = TRUE)    

twitter_search_corpus <- tm_map(twitter_search_corpus, removePunctuation, lazy = TRUE)

twitter_search_corpus <- tm_map(twitter_search_corpus, removeNumbers, lazy = TRUE)

twitter_search_corpus <- tm_map(twitter_search_corpus, removeWords, c("the", "this", "The", "This", stopwords('english')), lazy = TRUE)

twitter_search_corpus <- tm_map(twitter_search_corpus, stemDocument, lazy = TRUE)

# Create Document Term Matrix 
tdm <- as.matrix(TermDocumentMatrix(twitter_search_corpus
                                   ,control=list(wordLengths=c(3,Inf))
                                   ))

Нет ошибок до создания TermDocumentMatrix. Я получаю ошибку, как показано ниже

Предупреждение в mclapply(x$content[i], function(d) tm_reduce(d, x$lazy$maps)): запланированное ядро ​​1 обнаружило ошибку в коде пользователя, будут затронуты все значения задания. Предупреждение в mclapply(unname(content(x)), termFreq, control): запланированное ядро ​​1 обнаружило ошибку в коде пользователя, будут затронуты все значения задания. Предупреждение: Ошибка в UseMethod: нет применимого метода для "meta", примененного к объекту класса "try- ошибка "трассировка стека (самая внутренняя сначала): 74: FUN
73: счастье
72: setNames
71: as.list.VCorpus
70: as.list
69: счастье
68: meta.VCorpus
67: мета
66: TermDocumentMatrix.VCorpus
65: TermDocumentMatrix
64: as.matrix
63: наблюдать за событием
1: runApp

я уже добавила lazy = TRUE а также content_transformer(tolower) но все равно ошибка идет.

1 ответ

Проблема, кажется, с размещением

twitter_search_corpus <- tm_map(twitter_search_corpus, stripWhitespace, lazy = TRUE)

После удаления знаков препинания в текст были вставлены цифры и слова. Поэтому приведенный выше код для удаления пробелов должен быть последним оператором перед созданием TermDocumentMatrix.

Другие вопросы по тегам