简介
“结巴”中文分词的R语言版本,支持最大概率法(Maximum Probability), 隐式马尔科夫模型(Hidden Markov Model), 索引模型(QuerySegment), 混合模型(MixSegment), 共四种分词模式, 同时有词性标注,关键词提取,文本Simhash相似度比较等功能。项目使用了Rcpp和CppJieba进行开发。
特性
支持 Windows , Linux操作系统(Mac 暂未测试)。
通过Rcpp Modules实现同时加载多个分词系统,可以分别使用不同的分词模式和词库。
支持多种分词模式、中文姓名识别、关键词提取、词性标注以及文本Simhash相似度比较等功能。
支持加载自定义用户词库,设置词频、词性。
同时支持简体中文、繁体中文分词。
支持自动判断编码模式。
比原”结巴”中文分词速度快,是其他R分词包的5-20倍。
安装简单,无需复杂设置。
可以通过Rpy2,jvmr等被其他语言调用。
基于MIT协议。
安装
目前该包还没有发布到CRAN,可以通过Github进行安装。
*注:本文是ubuntu安装环境
install.packages("devtools")
library(devtools)
install_github("qinwf/jiebaR")
library(jiebaR)
使用
jiebaR提供了四种分词模式,可以通过jiebar()来初始化分词引擎,使用segment()进行分词。
library(jiebaR)
# 接受默认参数,建立分词引擎
mixseg = worker()
## 相当于:
# jiebar( type = "mix", dict = "inst/dict/jieba.dict.utf8",
# hmm = "inst/dict/hmm_model.utf8", # HMM模型数据
# user = "inst/dict/user.dict.utf8") # 用户自定义词库
mixseg <= "广东省深圳市联通" ## <= 分词运算符
# 相当于 segment("广东省深圳市联通" , mixseg)
# 分词结果
# [1] "广东省" "深圳市" "联通"
mixseg <= "你知道我不知道"
# [1] "你" "知道" "我" "不" "知道"
mixseg <= "我昨天参加了同学婚礼"
# [1] "我" "昨天" "参加" "了" "同学" "婚礼"
呵呵:分词结果还算不错
时间: 2024-10-26 15:04:56