原文链接:https://tecdat.cn/?p=34469
原文出处:拓端数据部落公众号
本文以R语言为工具,帮助客户对汽车网站的口碑数据进行抓取,并基于文本数据分词技术进行数据清理和统计。通过词频统计和词云可视化,对口碑中的关键词进行分析,挖掘出消费者对汽车的评价和需求,为汽车制造商和销售商提供重要的市场参考。
随着社会经济的不断发展,汽车已经成为人们日常生活中不可或缺的交通工具。汽车口碑对于消费者购车决策起着至关重要的作用,同时也是汽车制造商和销售商了解市场需求、改进产品质量和服务的重要依据。传统的汽车口碑调查方式往往需要耗费大量的人力物力,而网络上的汽车口碑数据正逐渐成为研究汽车市场和消费者需求的重要数据来源。然而,如何高效地获取和分析这些数据变得越来越重要。因此,本文利用R语言的数据抓取和文本数据分词技术,对汽车网站的口碑数据进行抓取和分析,旨在为汽车行业提供更准确、更快速的市场研究手段。
本文主要实现以下两个目标:
- 基于R语言的数据抓取部分。这一部分里面所有的结果都要实现
- 基于R语言的文本数据分词
在每一页评价内容的抓取中 , 依然使用 xpath SApply 函数,再输入特定的 XML 路径来抓取网页上的用户评价内容
library(RCurl)
Also load the other required package.
library("methods")
xpath <- '//div[@class=\"co81\"]'
url <-"www.chekb.com/suonata/koubei/"
pagetree <- htmlTreeParse(webpage, error=function(...){}, useInternalNodes = TRUE,encoding="UTF-8")
pagetree
value <- getNodeSet(pagetree,xpath)
i <- length(value) 统计满足条件的值个数,一般情况为1
读入数据
将需要分析的文本放入记事本中,保存到相应路径,并在R中打开。
head(lecture)
数据清理
jslecture$评价=gsub(pattern="[1|2|3|4|5|6|7|8|9|0]"," ",lecture$评价);
lecture$评价=gsub(pattern="/"," ",lecture$评价);
lecture$评价=gsub(pattern="!"," ",lecture$评价);
......
grepl 函数的 regexpr 函数、regmatches 函数,并结合正则表达式来匹配出“非灰色用户”的主页链接
grepl(pattern = "中国",x = lecture$网友)
分词+统计词频
word=lapply(X=words, FUN=strsplit, " ")
v=table(unlist(word))
统计数据的频数
对词频进行排序table函数得到各词组的词频,最后运用 sort 函数让其按词频降序排列,生成文档词矩阵
创建数据框
d=data.frame(词汇=names(v), 词频=v)
d
过滤掉1个字的结果和词频小于100的结果
筛选标准大家可以根据自己的需求进行修改
d1=subset(d, nchar(as.character(d$词汇))>1 & d$词频.Freq>=2)
词频统计结果(节选)如下:
画出标签云
(2)设置字体类型和字体颜色
mycolors <- brewer.pal(12,"Paired")
(3)画出标签云
dcloud(d1$词汇,d1$词频.Freq,random.order=FALSE,random.color=TRUE,colors=mycolors,family="myFont")
最受欢迎的见解
1.Python主题建模LDA模型、t-SNE 降维聚类、词云可视化文本挖掘新闻组
3.r语言文本挖掘tf-idf主题建模,情感分析n-gram建模研究
7.r语言中对文本数据进行主题模型topic-modeling分析
标签:抓取,词频,lecture,词云,口碑,文本,数据,分词 From: https://www.cnblogs.com/tecdat/p/18284901