6行R语言代码搞定词云

    词云效果非常非常炫酷,但是我们知道用python做词云相对比较痛苦,你需要不断在python2.7和3.6之间切换,不过R语言就方便多了,他的安装包管理相对比较舒服,用来做分词和词云只需要几行代码而已。

一、准备工作

目前网上的主流教程中都介绍使用Rwordseg+wordcloud的方式来做,不过R中的分词工具,最好用的还是jiebaR,安装以下三个包,这里我们介绍使用jiebaR+wordcloud2的方式来做词云的方式。首先装这三个包。

install.packages(“jiebaRD”)
install.packages(“jiebaR”)
install.packages(“wordcloud2”)

然后载入即可

library(jiebaRD)
library(jiebaR)
library(wordcloud2)

二、正式开始

orgtext<- scan('D:/test.txt',what='',encoding="ANSI")#读入你需要做词云的文本
seg <- qseg[orgtext]#分词
seg <- seg[nchar(seg)>1] #去除字符长度小于2的词
seg <- sort(seg, decreasing = TRUE)[1:200]#取前200词做词云即可
seg <- table(seg)#转换类型
wordcloud2(seg, size = 1, shape = 'circle',color = 'random-light',fontFamily = "微软雅黑")#渲染词云

怎么样,就这么简单。

三、原理简要介绍

我们这个词云,其实是先用qseg这个jiebaR自带的worker进行分词,他的基本信息如下:

> qseg
Worker Type:  Jieba Segment

Default Method  :  mix#分词方法,一般使用混合法,还有隐马等方式能选,不过一般不推荐。
Detect Encoding :  TRUE#是否自动识别编码。
Default Encoding:  UTF-8#默认编码。
Keep Symbols    :  FALSE#是否保留标点。
Output Path     :  
Write File      :  TRUE
By Lines        :  FALSE
Max Word Length :  20
Max Read Lines  :  1e+05

Fixed Model Components:  

$dict
[1] "D:/Program Files/R/R-3.5.2/library/jiebaRD/dict/jieba.dict.utf8"

$user
[1] "D:/Program Files/R/R-3.5.2/library/jiebaRD/dict/user.dict.utf8"

$hmm
[1] "D:/Program Files/R/R-3.5.2/library/jiebaRD/dict/hmm_model.utf8"

$stop_word#停用词字典
NULL

$user_weight
[1] "max"

$timestamp
[1] 1546164018

$default $detect $encoding $symbol $output $write $lines $bylines can be reset.

 

你可能感兴趣的:(R,language,R语言主题系列)