赵金晖
摘 要:《红楼梦》的作者问题一直是“红学研究”的热点。其中前80回和后40回分別由曹雪芹和高鹗所书的说法广为流传。通过直接调用数据分析的软件可以直观地看到结果,但并不能展示细节。文章将应用模糊层次聚类的方法,并详细展示主要步骤,比起均值聚类,文中的方法更加贴近于人的思维,便于理解和学习,研究者可以通过训练,熟练掌握文本处理、矩阵运算和编程等技巧。
关键词:python;层次聚类;模糊数学;红楼梦
《红楼梦》的作者问题一直是红学研究的热点。多位作者、不同时期的写作都可能是《红楼梦》全本风格不一的原因。其中前80回和后40回分别由曹雪芹和高鹗所书的说法广为流传。文章对这一假说进行简单的验证。本文取1—70回和86—120回进行聚类得出标准模型,并用余下的71—85回测试标准模型并验证所选的关于《红楼梦》作者的假说。
1 验证准备步骤
验证准备工作主要分为以下6个步骤。
(1)分章存储《红楼梦》全本;(2)分词后获取各章节共有的词;(3)得到章节间联系的模糊矩阵;(4)自下而上的层次聚类分析;(5)得到并验证标准模型;(6)扫描二维码(见图1)查看代码和处理结果。
2 文本处理
利用正则表达式获取《红楼梦》各章标题,以字典的形式分章存储红楼梦,key为标题,value为每章文本。对全本和各章进行分词后获取公共的词列表,共114个。统计公共词个数,得到长度为114的各章向量,如表1所示。
3 模糊向量和模糊矩阵
求1—70回和86—120回模糊向量集合List_for_matrix_index和章节间直接联系的模糊矩阵Direct_relation_matrix[i][j]。……