实现来看一下jiebaR 里面最重要的一个函数worker,通过它,我们可以设置一些分词类型,用户字典,停用词等等,函数语法为:
worker(type = "mix" , dict = DICTPATH , hmm = HMMPATH , user = USERPATH , idf = IDFPATH , stop_word = STOPPATH , write = T , qmax = 20 , topn = 5 , encoding = "UTF-8" , detect = T , symbol = F , lines = 1e+05 , output = NULL , bylines = F , user_weight = "max" )
参数注释:
| 
 参数  | 
 作用  | 
| 
 type  | 
 指分词引擎类型,这个包包括mix,mp,hmm,full,query,tag,simhash,keyword,分别指混合模型,支持最大概率,隐式马尔可夫模型,全模式,索引模型,词性标注,文本simhash相似度比较,关键字提取。  | 
| 
 dict  | 
 词库路径,默认为dictpath  | 
| 
 hmm  | 
 
  | 
| 
 user  | 
 用户自定义的词库  | 
| 
 idf  | 
 
  | 
| 
 stop_word  | 
 用来指定停词的路径  | 
| 
 qmax  | 
 词的最大查询长度,默认为20,可用于query分词类型  | 
| 
 topn  | 
 关键词的个数,默认为5,可以用于simhash和keyword分词类型  | 
| 
 symbol  | 
 输出是否保留符号,默认为F  | 
| 
 Lines  | 
 文件中最大一次读取的行数,默认为100000行  | 
| 
 output  | 
 输出文件,文件名一般以系统时间结尾  | 
| 
 bylines  | 
 返回输入的文件有多少行  | 
| 
 user_weight  | 
 用户词典的词权重,有“min”,“max”,“median”三个选项  | 
另外一个函数是segment,有三个参数,code 好比一个任务,jiebar就是一个worker,到那时担心worker 对工作的方法不懂,那就用mode 参数告诉worker 怎么做,也就是用什么分词引擎分词,作用分别如下:
| 
 参数  | 
 作用  | 
| 
 code  | 
 中文句子或者文件  | 
| 
 jiebar  | 
 设置分词的引擎,也就是worker函数  | 
| 
 mod  | 
 改变默认的分词引擎类型,其中包括以下几个: "mix", "hmm","query","full","level", "mp" 
  | 
接着做一个小测试:
原文:https://www.cnblogs.com/RHadoop-Hive/p/9447856.html