今天辰哥来教大家从一本小说/名著里面**提取出人名**,并对**人名之间的关系**进行统计(同一段里面人名两两出现),根据人名之间的关系进行**绘制关系图**--**gephi** **核心知识点**: 1. 提取文本中人名 2. 统计文本中人物之间的关系 3. 绘制网络关系图 先看一下**效果**:  # 01 jieba小例子 在开始分析《**斗罗大陆**》小说之前,先来一个小例子让大家对jieba库的使用有个印象。   **说明:**  可以看到文本内容结果jieba库分词之后,可以获取每一个的词性。咱们这里需要获取人名,只需要挑选出**nr**的词性,并统计每个词的次数。   这里就给大家演示讲解了jieba从文本提取人名的小例子,下面以小说《**斗罗大陆**》为例,讲解如何去提取里面人物名,并建立有向图,最后绘制人物关系图。 # 02 提取人物关系 **1.制作姓名字典**   部分结果如上图,通过提取小说中里面的所有名字,取出前100个并按频率从高到低写入txt。不过发现一些是不完整、无用、一个人物多名等情况。进行整理之后如下。  **2.建立人物有向关系**  通过构建的人物名在每一段中两两出现的进行统计。最后建立出来,人物节点和人物之间的联系。  **3.保存到csv**  结果如下:   # 03 人物关系网图 这里使用的是gephi进行绘制,gephi下载地址如下: ``` https://gephi.org/ ``` 下载安装之后,开始导入刚刚保存的node.csv和edge.csv数据绘制人物关系网图 **1.新建工程&导入数据** 新建工程->选择`数据资料`tab,点击`输入数字表格`,添加节点和边的`csv`数据。  **2.调整相关的样式**  **3.修改字体,显示相应的标签**  **4.选择一个自动化布局的方式,预览,再调整相关参数**  **5\. 最终点击左下角导出图片**  # 04 小结 本文讲解了提取文本中人名并统计文本中人物之间的关系,最后绘制网络关系图,不明白的地方可以在**下方留言**,一起交流。
微信关注我们
原文链接:https://blog.51cto.com/u_11949039/2891958
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
相关文章
发表评论
资源下载
更多资源Oracle Database,又名Oracle RDBMS
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。
Apache Tomcat7、8、9(Java Web服务器)
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
Eclipse(集成开发环境)
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。
Java Development Kit(Java开发工具)
JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。