R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析

简介: R语言《红楼梦》文本挖掘:词频统计、词云可视化及前后对比分析

作为中国古典文学的瑰宝,《红楼梦》具有极高的文学价值和丰富的主题内涵点击文末“阅读原文”获取完整代码数据

相关视频

image.png

近年来,随着大数据和文本挖掘技术的发展,对《红楼梦》等古典文学作品的深度分析成为可能。本研究采用R语言作为分析工具,对《红楼梦》全文进行文本挖掘,通过词频统计、词云可视化以及前后对比分析,以期深入探索这部经典小说的主题演变和人物塑造。

读入数据

将需要分析的文本放入记事本中,保存到相应路径,并在R中打开。这儿我导入的是《红楼梦》的文本。

先导入rJava和Rwordseg两个包

library(rJava)  
library(Rwordseg)

分词+统计词频

words=unlist(lapply(X=lecre, FUN=seentCN))
#unlist将list类型的数据,转化为vector  
#lapply()返回一个长度与X一致的列表,每个元素为FUN计算出的结果,且分别对应到X中的每个元素。

table统计数据的频数

降序排序

v=rev(sort(v))

过滤掉1个字的结果和词频小于100的结果

 

d1=subset(d, nchar(as.chad$词汇))>1 & d$词频.Freq>=100)

画出标签云

wordcloud(d1$词

332ba85f5b3a8f26d8554a9095f7878e.png


点击标题查阅往期内容


NLP自然语言处理—主题模型LDA案例:挖掘人民网留言板文本数据

04bfb7f6d1dfe81bf49ea060feb7e5df.png

性格分析:宝玉

xinggefenxi("宝玉")

3b9856c66022c8e0f2c5d5b4ed57acc6.png


从关键词“丫头”“出去”“姐姐”这些来看,贾宝玉是一个又奇又俗的人物。自幼深受祖母贾母疼爱,住贾母院。因此娇生惯养,构成他性格的主要特征是叛逆。他行为“偏僻而乖张”,是封建社会的叛逆者。他鄙视功名利禄,不愿走“学而优则仕”的仕途。他痛恨“八股”,辱骂读书做官的人是“国贼禄蠹”,懒于与他们接触拜会。

红楼梦前八十回与后四十回是否同一个人写的?

lecture<-read.csv("红楼梦前80回.txt", sSE,header=FALSE)  
   
words=unlist(lappl
#unlist将list类型的数据,转化为vector  
#lapply()返回一个长度与X一致的列表,每个元素为FUN计算出的结果,且分别对应到X中的每个元素。
word=lapply()

画出标签云

fe4cc080956ad9026bea9fef370276a0.png

lecture<-read.csv("红楼梦后40回.txt", stder=FALSE)

前后红楼梦词频对比

qianword=qianword[which(qianword[ ,1] %in% gongtongword),  ]  
  
houword=houword[which(houword[ ,1] %in% gongtongword),  ]

前红楼梦:

836f3b9dcc68ac41adbf32c6b832603a.png

后红楼梦:

d4946ad3eeaf3174df494b343ab8892d.png


t检验

t检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。用于比较前后红楼梦的关键词出现频率的区别差异。

t.test(qianword[,3],houword[,3])

53c8528ab49cebd9ddb2071773531a75.png

从结果来看,t检验的p值显著小于0.05,因此拒绝原假设。有95%的把握可以认为前后的红楼梦不是一个人所做。

5d55398a680d0b9e9e89e8e2adc9a06b.jpg


点击文末“阅读原文”

获取全文完整代码数据资料。

相关文章
|
4天前
|
数据可视化 数据挖掘 API
【R语言实战】聚类分析及可视化
【R语言实战】聚类分析及可视化
|
4天前
|
Web App开发 数据可视化 数据挖掘
利用R语言进行聚类分析实战(数据+代码+可视化+详细分析)
利用R语言进行聚类分析实战(数据+代码+可视化+详细分析)
|
4天前
|
数据采集 数据可视化
利用R语言进行因子分析实战(数据+代码+可视化+详细分析)
利用R语言进行因子分析实战(数据+代码+可视化+详细分析)
|
4天前
利用R语言进行典型相关分析实战
利用R语言进行典型相关分析实战
|
4天前
|
移动开发 数据可视化
广义线性模型beta二项分布的淋巴结疾病风险预测可视化R语言2实例合集|附数据代码
广义线性模型beta二项分布的淋巴结疾病风险预测可视化R语言2实例合集|附数据代码
|
4天前
|
机器学习/深度学习 数据可视化
R语言Stan贝叶斯回归置信区间后验分布可视化模型检验|附数据代码
R语言Stan贝叶斯回归置信区间后验分布可视化模型检验|附数据代码
|
4天前
|
机器学习/深度学习 算法
R语言分类回归分析考研热现象分析与考研意愿价值变现
R语言分类回归分析考研热现象分析与考研意愿价值变现
|
4天前
|
数据可视化
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码2
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码
|
4天前
|
数据可视化 数据挖掘
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码1
R语言广义线性混合模型GLMMs在生态学中应用可视化2实例合集|附数据代码
|
4天前
|
前端开发 数据可视化
R语言广义线性混合模型(GLMM)bootstrap预测置信区间可视化
R语言广义线性混合模型(GLMM)bootstrap预测置信区间可视化

热门文章

最新文章