2.1.6.2 查看与某一词相关度大于0.8的词条
> findAssocs(dtm,'opec',0.8) opec meeting 0.88 15.8 0.85 oil 0.85 emergency 0.83 analysts 0.82 buyers 0.80
2.1.7 处理词频矩阵
> dtm2<-removeSparseTerms(dtm,sparse=0.95) //parse值越少,最后保留的term数量就越少0.95是指如果某一词出现在文档的概率少于(1-0.95)则不再保留到词频矩阵。即删除权重少的元素。
2.3 分析结果
从聚类图可以看出,文档16和17是比较接近的。而3,4,1,19可以聚成一类,1,6,11,10,13也可分别聚为一类
3 中文文本挖掘实例
3.1 前期准备 3.1.1 Mmseg4j分词
使用中文分词法,由于词之间无有像英文一样的空隔,好在有Java已经解决了这样的问题,我们只需要在R-console里加载rJava与rmmseg4j两个工具包即可。如 >mmseg4j(\中国人民从此站起来了\ [1] 中国 人民 从此 站 起来
但事实上其技术是好几代之前的了,目前很少有人还在使用,并且其精度不高,用户自定义词典在R测试并无效。
> teststring<-c('我要学习r语言,兴趣小组,学无止尽') > mmseg4j(teststring)
[1] \我要 学习 r 语言 兴趣小组 学 无止 尽\
尽管在D:\\Program Files\\R\\R-3.0.3\\library\\rmmseg4j\%userDic中将自定义的词典r语言写入,但似乎并没有被识别到。
3.1.2 Rwordseg介绍
所需要的中文分词包Rwordseg,rjava包
Rwordseg 是一个R环境下的中文分词工具,使用rJava调用Java分词工具Ansj。 Ansj 也是一个开源的 Java 中文分词工具,基于中科院的 ictclas 中文分词算法,采用隐马尔科夫模型(Hidden Markov Model, HMM)。作者孙健重写了一个Java版本,并且全部开源,使得 Ansi 可用于人名识别、地名识别、组织机构名识别、多级词性标注、关键词提取、指纹提取等领域,支持行业词典、 用户自定义词典。
3.1.2.1 分词
segmentCN(strwords,
analyzer = get(\ nature = FALSE, nosymbol = TRUE,
returnType = c(\ outfile = \
nature用于设置是否输出词性,默认不用。
> segmentCN(teststring)
[1] \我\要\学习\语言\兴趣\小组\学\无\\止\尽\
加入用户自定义词典并进行测试
3.1.2.2 自定义词典
> insertWords(c(\我要\> segmentCN(teststring)
[1] \我要\学习\语言\兴趣\小组\学\无\止\尽\
3.1.2.3 安装新的词典
installDict(\
3.1.2.4 人名识别设置
> getOption(\[1] FALSE

