您好,登錄后才能下訂單哦!
小編給大家分享一下如何使用R-wordcloud2包繪制詞云,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
一 數(shù)據(jù)準(zhǔn)備
載入所需的R包,準(zhǔn)備好流浪地球的txt格式的文本文件。
library(jiebaRD) library(jiebaR) library(wordcloud2)
二 分詞,統(tǒng)計詞頻
使用jieba包對文本進(jìn)行分詞。
engine = worker() segment("流浪地球.txt",engine)data <- scan('流浪地球.segment.2019-04-09_22_36_54.txt',sep='\n',what='',encoding="UTF-8") data2 <- freq(data)data2 <- qseg[data]data.words <- data2head(data.words)
三 去掉停詞
過濾掉類似“的”,“你”,“我們”等類似的無意義的停詞,并可根據(jù)自己需要設(shè)置詞頻的個數(shù)。
#過濾掉1個字的詞data.words <- subset(data.words, nchar(as.character(data.words))>1) #過濾停詞stop=read.table(file=file.choose(),colClasses="character") stopwords=c(NULL) for(i in 1:dim(stop)[1]){ stopwords=c(stopwords,stop[i,1]) }for(j in 1:length(stopwords)){ data.words <- subset(data.words,data.words!=stopwords[j]) }
四 統(tǒng)計詞頻
4.1 統(tǒng)計詞頻
data.freq <- table(unlist(data.words)) data.freq <- rev(sort(data.freq)) data.freq <- data.frame(word=names(data.freq), freq=data.freq)
4.2 根據(jù)需要過濾頻次
#按詞頻過濾詞,過濾掉只出現(xiàn)過一次的詞,這里可以根據(jù)需要調(diào)整過濾的詞頻數(shù)data.freq=subset(data.freq, data.freq$freq.Freq>=2) head(data.freq) word freq.Var1 freq.Freq1 地球 地球 1642 太陽 太陽 953 發(fā)動機(jī) 發(fā)動機(jī) 604 人類 人類 355 地面 地面 306 木星 木星 28
五 繪制詞云
5.1 圖形設(shè)定為“star”
wordcloud2(data.freq[,2:3],color = "random-light", backgroundColor = "grey",shape = 'star')
5.2 漢字圖形展示
letterCloud(data.freq[,2:3],word="地球",size = 2)
5.3 指定圖形
指定的背景圖需要在R包的example文件夾中,本例為微信的開機(jī)圖,然而不像,,,鬼知道咋回事啊。
world = system.file("examples/download1.jpg",package = "wordcloud2")wordcloud2(data.freq[,2:3], figPath = world, size = 1,color = "black")
OK,詞云繪制完畢。
以上是“如何使用R-wordcloud2包繪制詞云”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。