使用R语言进行中文分词
1.准备包
①rJava包
② Rwordseg包
③java环境
④搜狗词库(此为扩展词库)
Rwordseg包依赖于rJava包。由于Rwordseg包并没有托管在CRAN上面,而是在R-Forge上面,因此在在R软件上面直接输入install.packages("Rwordseg")会提示错误。因此,我们需要在软件菜单栏点击 程序包
选择软件库 在选择R-Forge 即可,然后输入install.packages("Rwordseg")应该就OK了。或者输入下面代码:
install.packages("Rwordseg", repos = "http://R-Forge.R-project.org")
一切准备工作做好了我们就可以进行分词了。首先加载我们所需要的包。然后对“ 我非常喜欢《跟着菜鸟一起学R语言》这个微信公众号 ”这句话进行分词。
library(Rwordseg)
library(rJava)
text<-"我非常喜欢《跟着菜鸟一起学R语言》这个微信公众号"
segmentCN(text)
分词结果为:
[1] "我" "非常" "喜欢" "跟" "着" "菜" "鸟" "一起" "学" "R语言" "这个" "微信" "公众" "号"
我们可以发现这个分词有问题,比如说 “菜鸟”和“公众号”是一个词,但这里却分开了。我们该怎么处理呢?Rwordseg包里面提供了一个insertWords函数,具体如下
insertWords(strwords,analyzer = get("Analyzer", envir = .RwordsegEnv),strtype = rep("userDefine", length(strwords)),numfreq = rep(1000, length(strwords)), save = FALSE)
这就是insertWords函数,其中save参数是指 是否把这个词保存到词典里面。
insertWords(c("菜鸟","公众号"),save=TRUE)
这样的话,菜鸟 和 公众号 就成两个词了。再次运行
text<-"我非常喜欢《跟着菜鸟一起学R语言》这个微信公众号"
segmentCN(text)
结果为
[1] "我" "非常" "喜欢" "跟" "着" "菜鸟" "一起" "学" "R语言" "这个" "微信" "公众号"
但是如果我们不需要“菜鸟”这个分词了怎么办,这个时候我们就可以使用deleteWords()函数来从词典中删除这个分词。
deleteWords(c("菜鸟","公众号"),save=TRUE)
这次我们在看看结果。
[1] "我" "非常" "喜欢" "跟" "着" "菜" "鸟" "一起" "学" "R语言" "这个" "微信" "公众" "号"
接下来我们使用一下搜狗的扩展词库,由于电影跟新速度较快,我这里下载了搜狗的热门电影大全词库,如何加载使用搜狗词库,点击可以查看我的另一篇博客。
installDict("热门电影大全.scel","movie")
59391 words were loaded! ... New dictionary 'movie' was installed!
我把下载的词库放在了当前的工作目录下面了,所以直接输入词典名,没有添加地址。加载了该词典。如果出现上面的句子则表示这个词典加载成功了,我们命名为movie。
现在我们来测试一下面这个句子: 你喜欢看最后的巫师猎人吗
text2<-"你喜欢看最后的巫师猎人吗"
segmentCN(text2)
"你" "喜欢" "看" "最后的巫师猎人" "吗"
可以看到“最后的巫师猎人”是一个词,如何我们把movie这个词典删除点会怎么样呢?
uninstallDict("movie")
text2<-"你喜欢看最后的巫师猎人吗"
segmentCN(text2)
[1] "你" "喜欢" "看" "最后" "的" "巫师" "猎人" "吗"
其实加载搜狗词典的话我们就不用自己定义词典,就比如前面我们往词典里面插入“菜鸟”和“微信公众号”一样。这样可以很方便的分词,也省去了自己新建词典的时间。
注:本博客及其相关资源也会发布在《跟着菜鸟一起学R语言》微信公众平台一起发布
转载请声明原文链接 http://blog.csdn.net/wzgl__wh/article/details/52528925
使用R语言进行中文分词相关推荐
- R语言进行中文分词和聚类
目标:对大约6w条微博进行分类 环境:R语言 由于时间较紧,且人手不够,不能采用分类方法,主要是没有时间人工分类一部分生成训练集--所以只能用聚类方法,聚类最简单的方法无外乎:K-means与层次聚类 ...
- 《R语言与数据挖掘》③-①使用R语言进行中文分词
RWordseg包文本分词 library(rJava) library(Rwordseg) 文本分词 text = "今天天气真好呀,好想出去玩" segmentCN(text) ...
- Elasticsearch 多语言及中文分词与检索详解
文章目录 1. 自然语言与查询 Recall 2. 混合多语言的挑战 3. 分词的挑战 4. 中文分词方法的演变 - 字典法 5. 中文分词方法的演变 - 基于统计法的机器学习算法 6. 中文分词器现 ...
- 多语言及中文分词与检索
多语言及中文分词与检索 Ik pinyin 中文分词 分词标准:哈工大 标准中,姓和名分开,HanLp是在一起的 http://www.hanlp.com Ik pinyin keep_first_l ...
- R语言含中文数据导入的方法
文章目录 写在前面 txt文本型数据的导入 xlsx表格型数据的导入 CSV逗号分隔符型数据的导入 写在前面 最近学习R语言,常常会遇到带有中文标签的数据,这时候进行处理的话,会出现数据显示不全,甚至 ...
- R语言读取 文件 中文乱码,R语言画图 中文不显示
R语言 读入excel文件:用openxlsx install.packages(openxlsx) library(openxlsx) a<-read.xlsx("exercise1 ...
- R语言,中文排序问题
在一次数据分析的实验上,需要处理数据分析的问题,最后需要根据姓和名进行排序,但是由于姓名是中文,排序的结果有问题 没有处理中文的排序 处理之后的排序 初步想法是根据中文的笔画排序,然后百度到了可以使用 ...
- R语言中文分词包jiebaR
R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据的爆发,R语言变成了一门炙手可 ...
- R语言——中文分词包jiebaR
R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大. R语言作为统计学一门语言,一直在小众领域闪耀着光芒.直到大数据的爆发,R语言变成了一门炙手可 ...
最新文章
- ThinkPHP入门(二)
- 蓝桥杯国赛-估计人数
- python实现网络监控_使用python进行服务器监控
- djc加密数字货币_中国银行原副行长: quot;网络加密币quot;难以成为货币,央行数字货币只能是法定货币的数字化...
- 网站搭建从零开始(四) 服务器的配置
- Java线程的6种状态
- python setup.py 指定文件到指定路径_linux下python安装到指定目录
- Windows编程—控制面板程序显示信息修改(程序图标、名称、链接等)
- lwip 数据处理流程
- 一年中重要的节日列表_感悟 | 一年中最重要的节日是春节!
- linux移植win项目找不到pthread.h
- Hibernate OneToMany中的mappedBy
- win10红警2黑屏_win10怎么玩红警2尤里的复仇及其mod的方法汇总,mod打不开、卡顿的通用解决方案...
- 约翰诺依曼在1940年发明了计算机英语,冯诺依曼元胞自动机
- 电信光纤猫虚拟服务器设置方法,电信光纤猫怎么设置宽带拨号?
- 两台主机如何共享一套键鼠一台显示器?
- Maven配置文件示例
- C语言实现计算一段字符串的MD5码
- 设备出现无法访问故障,单向能ping通问题排查解决过程
- 零基础开发一款微信小程序商城