我专注于Twitter抓取。为此,我使用了包裹
library("twitteR")
然后,我现在要为#Hello抓取1000条推文。
mytweets = searchTwitter("#Hello", n=1000)
现在让我们使用语料库功能:
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可以使用的文本)的基础,所以我想找到另一种方法来实现此结果。