zoukankan      html  css  js  c++  java
  • R语言之中文分词:实例

    一、说明

          网上提供的一个例子,做了修改与订正。

    二、程序

    #调入分词的库
    library("rJava")
    library("Rwordseg")
    #调入绘制词云的库
    library("RColorBrewer")
    library("wordcloud")    
       
    #读入数据(特别注意,read.csv竟然可以读取txt的文本)
    myfile<-read.csv(file.choose(),header=FALSE)
       
    #预处理,这步可以将读入的文本转换为可以分词的字符,没有这步不能分词
    myfile.res <- myfile[myfile!=" "]    
       
    #分词,并将分词结果转换为向量
    myfile.words <- unlist(lapply(X = myfile.res,FUN = segmentCN))
       
    #剔除URL等各种不需要的字符,还需要删除什么特殊的字符可以依样画葫芦在下面增加gsub的语句
    myfile.words <- gsub(pattern="http:[a-zA-Z\/\.0-9]+","",myfile.words)
    myfile.words <- gsub(" ","",myfile.words)
    myfile.words <- gsub(" ","",myfile.words)
       
    #去掉停用词
    data_stw=read.table(file=file.choose(),colClasses="character")
    stopwords_CN=c(NULL)
    for(i in 1:dim(data_stw)[1]){
    stopwords_CN=c(stopwords_CN,data_stw[i,1])
    }
    for(j in 1:length(stopwords_CN)){
    myfile.words <- subset(myfile.words,myfile.words!=stopwords_CN[j])
    }
    #过滤掉1个字的词
    myfile.words <- subset(myfile.words, nchar(as.character(myfile.words))>1)
       
    #统计词频
    myfile.freq <- table(unlist(myfile.words))
    myfile.freq <- rev(sort(myfile.freq))
    #myfile.freq <- data.frame(word=names(myfile.freq),freq=myfile.freq);
       
    #按词频过滤词,过滤掉只出现过一次的词,这里可以根据需要调整过滤的词频数
    #特别提示:此处注意myfile.freq$Freq大小写
    myfile.freq2=subset(myfile.freq, myfile.freq$Freq>=10)    
       
    #绘制词云
    #设置一个颜色系:
    mycolors <- brewer.pal(8,"Dark2")
    #设置字体
    windowsFonts(myFont=windowsFont("微软雅黑"))
    #画图
    wordcloud(myfile.freq2$word,myfile.freq2$Freq,min.freq=10,max.words=Inf,random.order=FALSE,
    random.color=FALSE,colors=mycolors,family="myFont")

    三、结果

     

  • 相关阅读:
    让AutoMapper更好用
    设置ADB网络连接目标板
    windos或linux中 which命令 查看当前要执行的命令所在的路径
    secureCRT使用退格键(backspace)出现^H解决办法
    Ubuntu12.04安装insight-6.8
    Linux命令之type
    BUG:给Nexus7编译Android4.2的时候出现 fatal error: map: No such file or directory
    Kconfig和Makefile的修改
    diff命令的参数详解和实例
    Linux获取当前目录名,shell获取当前目录名
  • 原文地址:https://www.cnblogs.com/hadoopdev/p/5734208.html
Copyright © 2011-2022 走看看