您现在的位置:首页 >> 前端 >> 内容

R语言文本挖掘-分词

时间:2017/3/28 9:11:00 点击:

  核心提示:R语言文本挖掘-分词。#导入数据#读入数据housedetail-read.csv(C:\\Users\\PC\\Desktop\\lianjia.csv,stringsAsFactors = F)#...

R语言文本挖掘-分词。

#导入数据

#读入数据

housedetail<-read.csv("C:\\Users\\PC\\Desktop\\lianjia.csv",stringsAsFactors = F)

#整理数据,数据处理,取子集

housetitle<-housedetail[,1]

#数据分析

#函数:实现字符串的连接,并去除数字,标点

combindString <- function(s){

tem <- ''

for (i in 1:length(s)) tem <- paste(tem,s[i],sep = "")

tem <- gsub("[0-9 ,、!?。]","",tem)

tem

}

#获取 所有的标题描述并连接

title<-combindString(housetitle)

#分词

library(jiebaRD)

library(jiebaR)

analyzer<-worker()

results<-(analyzer<=title)

#分好的词是一个向量,我们需要进行词频统计

#可以通过制造一个数据框,分组数数的方法

#创建包含词汇、词频的数据框

wordseg<-data.frame("词汇"=results,stringsAsFactors = F)

wordseg$词频<-1

wordseg

#使用plyr包中的函数进行分组统计

library(plyr)

#求和

sumBygroup<-function(df)sum(df[,2])

#分组统计

groupstatis<-ddply(wordseg,.(词汇),sumBygroup)

#查看分组后的结果?

View(head(groupstatis,30))

#更改列名

names(groupstatis)<-c("词汇","词频")

#为了避免小概率的词出现太多,我们找出词频

#大于5的词进行绘图

groupstatis<-subset(groupstatis,词频>5)

#绘图

#导入包

library(RColorBrewer)

library(wordcloud)

#定义颜色向量

color<-c("#FF8C00","purple","orange","brown","green")

#调用词云函数

par(mar = c(0, 0, 3, 0), bg = "black")

wordcloud(groupstatis$词汇,groupstatis$词频,min.freq=5,max.words=200,random.order = F,colors = color )

作者:网络 来源:Hydra_shua