R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大。
R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已不仅仅是统计领域,教育,银行,电商,互联网….都在使用R语言。
要成为有理想的极客,我们不能停留在语法上,要掌握牢固的数学,概率,统计知识,同时还要有创新精神,把R语言发挥到各个领域。让我们一起动起来吧,开始R的极客理想。
关于作者:
- 张丹(Conan), 程序员Java,R,PHP,Javascript
- weibo:@Conan_Z
- blog: http://blog.fens.me
- email: bsspirit@gmail.com
转载请注明出处:
http://blog.fens.me/r-word-jiebar/
前言
本文挖掘是数据挖掘中一个非常重要的部分,有非常广阔的使用场景,比如我们可以对新闻事件进行分析,了解国家大事;也可以对微博信息进行分析,通过社交舆情看看大家的关注点。通过文本挖掘找到文章中的隐藏信息,对文章的结构进行分析,判断是不是同一个作者写文章;同时可以对邮件分析,结合bayes算法判断哪些是垃圾邮件,哪些是有用的邮件。
本文挖掘的第一步,就是要进行分词,分词将直接影响文本挖掘的效果。R语言在分词方面有很好的支持,接下来就给大家介绍一个不错的R语言中文分词包“结巴分词”(jiebaR)。
目录
- jiebaR包介绍
- 5分钟上手
- 分词引擎
- 配置词典
- 停止词过滤
- 关键词提取
1. jiebaR包介绍
结巴分词(jiebaR),是一款高效的R语言中文分词包,底层使用的是C++,通过Rcpp进行调用很高效。结巴分词基于MIT协议,就是免费和开源的,感谢国人作者的给力支持,让R的可以方便的处理中文文本。
官方Github的地址:https://github.com/qinwf/jiebaR
本文所使用的系统环境
- Win10 64bit
- R: 3.2.3 x86_64-w64-mingw32/x64 b4bit
jiebaR包是在CRAN发布的标准库,安装起来非常简单,2条命令就可以了。
~ R
> install.packages("jiebaR")
> library("jiebaR")
如果想要安装开发版本,可以使用devtools来进行安装,devtools的介绍请参考文章:在巨人的肩膀前行 催化R包开发
> library(devtools)
> install_github("qinwf/jiebaRD")
> install_github("qinwf/jiebaR")
> library("jiebaR")
开发版本安装,官方建议使用Linux系统 gcc >= 4.6 编译,Windows需要安装 Rtools。
2. 5分钟上手
5分钟上手,直接看第一个例子吧,对一段文字进行分词。
> wk = worker()
> wk["我是《R的极客理想》图书作者"]
[1] "我是" "R" "的" "极客" "理想" "图书" "作者"
> wk["我是R语言的深度用户"]
[1] "我" "是" "R" "语言" "的" "深度" "用户"
很简单地,2行代码,就完成了中文分词。
jiebaR提供了3种分词语句的写法,例子上面的用[]符号的语法,还可以使用<=符合语法,或者使用segment()函数。虽然形式不同,但是分词效果是一样的。 使用<=符号的语法,如下
> wk<='另一种符合的语法'
[1] "另" "一种" "符合" "的" "语法"
使用segment()函数的语法,如下
> segment( "segment()函数语句的写法" , wk )
[1] "segment" "函数" "语句" "的" "写法"
如果你觉得很神奇,想了解如何自定义操作符的,可以检查项目的源代码quick.R文件。
# <= 符号定义
`<=.qseg`
我们也可以直接对文本文件进行分词,在当前目录新建一个文本文件idea.txt。
~ notepad idea.txt
R的极客理想系列文章,涵盖了R的思想,使用,工具,创新等的一系列要点,以我个人的学习和体验去诠释R的强大。
R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已不仅仅是统计领域,教育,银行,电商,互联网….都在使用R语言。
当然,我们运行分词程序,会在当前目录生成一个新的分词结果的文件。
> wk['./idea.txt']
[1] "./idea.segment.2016-07-20_23_25_34.txt"
打开文件idea.segment.2016-07-20_23_25_34.txt,整个本文以空格进行分词。
~ notepad idea.segment.2016-07-20_23_25_34.txt