R分词

#用于下载安装rJava 和 Rwordseg,如果安装了就注释掉
install.packages("rJava")
install.packages("Rwordseg", repos="http://R-Forge.R-project.org", type="source")

#导入rJava 和Rwordseg
library(rJava)
library(Rwordseg)
#测试rJava 和Rwordseg是否安装好
teststring1 <- "我爱R语言,我爱文本挖掘"
segmentCN(teststring1)
#观察分词1000次花的时间
system.time(for(i in 1:1000) segmentCN(teststring1))
#segmentCN的详细解释
?segmentCN

#若输入参数为字符向量,则返回列表
segmentCN("结合成分子时")
segmentCN(c("说的的确在理","一次性交多少钱"))
#默认nosymbol为TURE 不输出标点,只能有汉字,英文,和数字
segmentCN("我喜欢读《圣经》,你呢?")
segmentCN("我喜欢读《圣经》,你呢?",nosymbol=FALSE)
#nature设置 是否输出词性 不是很智能 会出现错误
segmentCN("花了一元钱买了一朵美丽的花",nature=TRUE)


#参数isNameRecognition  可用来人的名字识别,
getOption("isNameRecognition") #默认是不进行人名识别,输出false
segmentCN("梅超风不是是桃花岛岛主")
segment.options(isNameRecognition = TRUE)
getOption("isNameRecognition")
segmentCN("梅超风是桃花岛岛主")

#对金庸的侠客行进行分词,分词的结果会输出到“侠客行.segment.txt”下
segmentCN("E://Rcode//source//侠客行.txt")
#“侠客行.txt” 364251个字, 大约用时间10S,还是很快的
system.time(segmentCN("E://Rcode//source//侠客行.txt"))

#查看词典
listDict()
segmentCN("湖北大鼓真是不错呀")
#导入~.dic词典,可以直接复制然后改名为.dic
installDict("E://Rcode//source//default.dic","default")
segmentCN("湖北大鼓真是不错呀")
#uninstallDict() 删除安装的词典
uninstallDict()
#listDict() 查看剩余的词典
listDict()


##用搜狗词库的时候 一定要在官网上下载  ~.scel 文件,
#不能直接将 下载的 ~.txt改为~.scel
segmentCN("床前明月光,凝视地上霜")
installDict("E://Rcode//source//李白诗集【官方推荐】.scel","libai",dicttype = "scel")
segmentCN("床前明月光,凝视地上霜")

segmentCN("天罡北斗阵和六脉神剑哪个更厉害")
listDict()
installDict("E://Rcode//source//金庸武功招式.scel","jinyong",dicttype = "scel")
segmentCN("天罡北斗阵和六脉神剑哪个更厉害")

#自定义词典
#手动添加或删除词汇,仅仅只在内存中临时添加,未记录下来
segmentCN("画角声断谯门")
insertWords("谯门")
insertWords("画角")
segmentCN("画角声断谯门")
deleteWords(c("谯门","画角"))
segmentCN("画角声断谯门")
#使用save参数,把操作记录下来,下回启动能直接用
insertWords(c("谯门","画角"),save=TRUE)
segmentCN("画角声断谯门")

 

posted @ 2014-10-08 08:35  北门吹风  阅读(641)  评论(0编辑  收藏  举报