2014-11-25 3 views
6

트위터 데이터에 클라우드를 수행하는 데 Wordcloud 기능을 사용하고 싶습니다. 트위터 패키지를 설치하고 API로 작업했습니다. 그 후에 나는 다음과 같이한다.R에서의 Wordcloud + corpus 오류

bigdata <- searchTwitter("#bigdata", n=20) 

bigdata_list <- sapply(bigdata, function(x) x$getText()) 
bigdata_corpus <- Corpus(VectorSource(bigdata_list)) 
bigdata_corpus <- tm_map(bigdata_corpus, content_transformer(tolower), lazy=TRUE) 
bigdata_corpus <- tm_map(bigdata_corpus, removePunctuation, lazy=TRUE) 
bigdata_corpus <- tm_map(bigdata_corpus, 
          function(x)removeWords(x,stopwords()), lazy=TRUE) 
wordcloud(bigdata_corpus) 

이는 단어 구름과 명령에 대한 오류 메시지를 생성합니다 : 나는 다른 코퍼스 명령을 시도했지만 질수가 바로 그것을 얻을 수가

Error in UseMethod("meta", x) : 
    no applicable method for 'meta' applied to an object of class "try-error" 
In addition: Warning messages: 
1: In mclapply(x$content[i], function(d) tm_reduce(d, x$lazy$maps)) : 
    all scheduled cores encountered errors in user code 
2: In mclapply(unname(content(x)), termFreq, control) : 
    all scheduled cores encountered errors in user code 

. 아이디어가 있으십니까?

답변

1

이 작업을 시도 할 수 있습니다 : tm_0.6wordcloud_2.5 두 가지로

library("tm") 
# Transform your corpus in a term document matrix 
bigdata_tdm <- as.matrix(TermDocumentMatrix(bigdata_corpus)) 
# Get the frequency by words 
bigdata_freq <- data.frame(Words = rownames(bigdata_tdm), Freq = rowSums(bigdata_tdm), stringsAsFactors = FALSE) 
# sort 
bigdata_freq <- bigdata_freq[order(bigdata_freq$Freq, decreasing = TRUE), ] 
# keep the 50 most frequent words 
bigdata_freq <- bigdata_freq[1:50, ] 

# Draw the wordcloud 
library("wordcloud") 
wordcloud(words = bigdata_freq$Words, freq = bigdata_freq$Freq) 

작동합니다.