标签:处理 use reader dict 金庸 packages 列表 文档 相对
概念
1、语料库-Corpus
语料库是我们要分析的所有文档的集合,就是需要为哪些文档来做词频
2、中文分词-Chinese Word Segmentation
指的是将一个汉字序列切分成一个一个单独的词语。
3、停用词-Stop Words
数据处理的时候,自动过滤掉某些字或词,包括泛滥的词如Web、网站等,又如语气助词如的、地、得等。
需要加载的包
1、tm包
安装方式:install.packages("tm")
语料库:
Corpus(x,readerControl)
x-语料库的数据源,可以使用目录数据源-DirSource,或者向量数据源-VectorSource
readerControl-语料库的读取控制器,是一个list;参数reader-文本为reader,pdf为readPDF等,参数language为文本语言,默认为“en”
举例:
#按目录读入语料库,就是把数据读取出来
C000007 <- Corpus(
DirSource(
‘SogouC.mini/Sample/C000007‘ //这个是相对路径,绝对路径为:C:\Users\22636\Desktop\R语言资料\2.1\SogouC.mini\Sample\C000007
),
readerControl = list(language="UTF-8")
)
语料库处理:
tm_map(x,FUN)
x-上面的语料库
FUN-使用哪个处理函数,函数如下
tolower-转成小写
removeWords-移除分词,一般用语移除停用词
stripWhitespace-移除空白字符
PlainTextDocument-处理HTML或者XML文档
segmengCN-中文分词函数,来自Rwordseg包
2、tmcn包-停用词包
安装方式:install.packages("tmcn", repos="http://R-Forge.R-project.org");
安装后使用stopwordsCN()
3、Rwordseg包
安装方式:
install.packages("rJava")
install.packages("Rwordseg", repos="http://R-Forge.R-project.org")//如果这个不行则用下面的
#install.packages("Rwordseg", repos="http://R-Forge.R-project.org", type="source")
分词方法:
segmentCN(strwords,outfile="",returnType=c("vector","tm"))
strwords-需要分词的字符串或者文件路径
outfile-分词后输出的路径,默认为输入文件的同级目录
returnType-返回值类型,默认是数组,可以选择为tm包的语料库类型
安装/卸载字典:
installDict(dictpath,dictname)
uninstallDict(dictname)
dictpath-字典文件路径
dictname-字典名字
字典下载:http://pinyin.sogou.com/dict/
显示字典列表
listDict()
举例:
segmentCN("真武七截阵和天罡北斗阵哪个厉害")
输出:
[1] "真" "武" "七" "截" "阵" "和" "天罡" "北斗"
[9] "阵" "哪个" "厉害"
加载字典:
installDict(‘金庸武功招式.scel‘, ‘金庸武功招式‘)
输出:
[1] "真武七截阵" "和" "天罡北斗阵" "哪个"
[5] "厉害"
当然也可以使用路径的方式来进行分词,如下面则是根据路径来针对文档里面的语句进行分词,并且分词后会在同目录下生成分词后的新文档:
data <- segmentCN(
‘SogouC.mini/Sample/C000007/10.txt‘
)
4、TM包和Rwordseg包组合使用
#加载tm和tmcn包
library(tm)
library(tmcn)
#按目录读入语料库
C000007 <- Corpus(
DirSource(
‘SogouC.mini/Sample/C000007‘
),
readerControl = list(language="UTF-8")
)
stopwordsCN()
#加载rwordreg包
library(Rwordseg)
C000007 <- tm_map(C000007, stripWhitespace) //先把c000007语料库中的空格移除
C000007 = tm_map(C000007, content_transformer(segmentCN), returnType=‘tm‘) //用segmentcn方式进行分词
标签:处理 use reader dict 金庸 packages 列表 文档 相对
原文地址:http://www.cnblogs.com/xugege/p/7368306.html