三国演义python分析系统_Python之三国演义(上)
一、设计实现详细说明
1.1 任务详细描述
以中国四大名著之一——《三国演义》为蓝本,结合python数据分析知识进行本次的文本分析。《三国演义》全书共120回。本次的分析主要基于统计分析、文本挖掘等知识。
1.2 设计思路详细描述数据准备、数据预处理、分词等
全书各个章节的字数、词数、段落等相关方面的关系
整体词频和词云的展示
全书各个章节进行聚类分析并可视化,主要进行了根据IF-IDF的系统聚类和根据词频的LDA主题模型聚类
人物关系网络的探索,这里选取了部分人物之间的关系进行分析,主要探索了各个章节的关系图和人物关系网络图。
1.3 涵盖主要知识点分词包jieba的运用、数据读取、数据预处理
运用wordcloud库进行词云的绘制
文本聚类分析:TF-IDF矩阵、K-Means聚类、MDS降维、PCA降维、HC聚类、t-SNE高维数据可视化
LDA主题模型
人物社交网络分析
Gephi、oracle database visualization desktop工具的使用
二、程序运行效果
2.1 数据预处理
2.1.1《三国演义》全书文本
2.1.2 重新整理行索引
2.1.3 提取标题并切分内容
2.1.4 建立保存数据的数据表
注:为了使程序正确运行,建立了一个null(空)列,但对数据分析并不会产生影响。
2.1.5 计算每章段落、字数及其内容
2.2 可视化展示
2.2.1 章节段数与章节字数
分析:由图中分析可知:在《三国演义》的120回当中,章节段数主要集中在10-20这个区间当中,章节段数中最多的便是第22章的段数最多;而每个章节字数中,字数最多的就是第60章的字数。
本张图与上图的不同之处在于每个点标注所用的文本不同
2.2.2 章节段数、字数与情节发展趋势之间的关系
由章节回数与章节段数可以看出在大概第22回章节段数最多,而章节字数与章节比较时,可以看出大概第60章左右的章节字数最多。
2.2.3 对《三国演义》进行分词
首先将每一章的分词结果作为一个列表,然后转化为pandas中的series(序列),分词后不仅需要去除长度为1的单个字,还要去除没有意义的停用词,然后将每一章的词语组成列表,放入pandas的Dataframe中。
(1)分词之后就可以统计全书的词频,为绘制词云图做准备
(2)制作词云之全书词云图
(3)用字典生成词云图
先生成相关字典:
绘制词云图:
利用图片生成有背景图片的词云
2.2.4 通过绘制词语出现的次数(频数)的直方图,来查看文章中词语的出现情况。
从中可以看出“孔明”出现的次数最多
2.2.5 绘制频数大于250次的词语直方图
发现仍是“孔明”出现次数最多
2.2.6 构建分词TF-IDF矩阵(词频逆文档频率)只截取了部分
2.2.7 K-Means聚类
K-Means聚类:对于给定的样本集A,按照样本之间的距离大小,将样本A划分为K个簇A1、A2、A3........让这些簇内的点尽量紧密地联系在一起,而让簇间的距离尽量最大。K-Means算法是无监督的聚类算法,使得每个点都属于离它最近的均值(即聚类中心)对应的簇Ai中
2.2.8 MDS降维
针对在MDS下每个章节的相对分布情况,章节之间没有很明显的分界线,因为这是一本故事书,讲的是故事,但因为每个章节都是不一样的,相互之间的联系也是不同的
2.2.9 PCA降维
从图中可以得知,有些章节的内容和大部分章节内容还是距离很远的,比如99、100、101章
注意:文章有点长,放在下一页了:拂羽:Python之三国演义(下)zhuanlan.zhihu.com
三国演义python分析系统_Python之三国演义(上)相关推荐
- 三国演义python分析系统_用python分析四大名著之三国演义
点击上方"程序人生",选择"置顶公众号" 第一时间关注程序猿(媛)身边的故事 项目起因及意义 起初在浏览知乎时看见一篇文章觉得很有意思(用 Python 分析& ...
- Python分析离散心率信号(上)
Python分析离散心率信号(上) 一些理论和背景 心率包含许多有关信息.如果拥有心率传感器和一些数据,那么当然可以购买分析包或尝试一些可用的开源产品,但是并非所有产品都可以满足需求.也是这种情况.那 ...
- python制作成绩分析系统_python实现学生成绩测评系统
本文实例为大家分享了python实现学生成绩测评系统的具体代码,供大家参考,具体内容如下 1.问题描述(功能要求): 根据实验指导书要求,完成相关软件系统的设计,要求内容翔实,条理清晰,图文并茂(流程 ...
- 用python分析小说_Python语言之用Python分析一下当年看金庸小说最爱的主角是谁
本文主要向大家介绍了Python语言之用Python分析一下当年看金庸小说最爱的主角是谁,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. jieba用起来非常简单,短短几行代码就完 ...
- python足球分析系统_python分析欧洲足球赛事
数据来源:kaggle数据准备 import pandas as pd import matplotlib.pyplot as plt import numpy as np import scipy ...
- python数据分析系统_Python数据分析,系统步骤介绍!
原标题:Python数据分析,系统步骤介绍! 摘要 在用Python做数据分析的过程中,有一些操作步骤和逻辑框架是很固定的,只需要记住其用法即可.本节内容介绍Pandas模块在数据分析中的常用方法. ...
- python 通讯录系统_Python下的通讯录
Python 下的通讯录 1 .课题需求 1.1 系统开发的目标和思想 随着社会的发展 , 人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲 戚.朋友.同学.同事保持联系,但是有时候存在着 ...
- 测试python安装成功_Python在Windows上安装配置测试
Python是跨平台的,它可以运行在Windows.Mac和各种Linux/Unix系统上.在Windows上写Python程序,放到Linux上也是能够运行的. 2.x还是3.x 目前,Python ...
- python分析就业率_Python就业行情和前景分析之一
Python就业行情和前景分析之一爬取数据 最近Python大热,就想要分析一下相关的市场需求,看一下Python到底集中在哪些城市,企业对Python工程师的一些需求到底是怎样的,基于此,爬取了国内 ...
- python投票系统_python实时投票系统的课设
季元峰脸色铁青,秦齐竟然敢这么跟他说话,实在是不知死活,难道秦齐现在还没有看清局势不成?python实时投票系统的课设 巴小琪如今的神志,显然已经被尼德霍格所侵蚀,连他都是不认识了. "这是 ...
最新文章
- 全面理解python中self的用法
- Python学习笔记:循环语句
- CLR via C# 3 读书笔记(2):第1章 CLR执行模型 — 1.2 将托管模块组合为程序集
- php 基础 判断类型
- 链路追踪php,easyswoole链路追踪
- 2016年《大数据》高被引论文Top10
- flask 导出excel
- myeclipse中tomcat热部署设置
- 电脑小白须知!N卡和A卡有什么区别?A卡和N卡的区别,一个动图秒懂!
- OneZero——Review会议(2013.5.20)
- 汇编语言里 eax ebx ecx edx esi edi ebp esp这些都是什么意思啊
- 从前有座山,山上有两台计算机
- spp_solver
- matlab 读ctl,用matlab将nc数据读出来,写成二进制文件,然后用grads画图
- 学生免费申请JetBrains许可
- 海峰五笔 8.0 下载
- VS系统找不到指定文件怎么解决
- 树莓派3使用红外遥控器模拟鼠标和键盘
- 理解conda install -c conda-forge some-package 命令
- 酷狗音乐鸿蒙os,酷狗音乐鸿蒙OS