Python在数据分析中越来越受欢迎,已经达到了统计学家对R的喜爱程度,Python的拥护者们当然不会落后于R,开发了一个个好玩的数据分析工具,下面我们来看看如何使用Python,来读红楼梦,本文是《用Python读红楼梦》系列文章的第一篇,绘制小说中的词云。首先当然要导入我们需要用到的包,下面import进来的包,都是我们将在接下来的程序中使用到的包,如果大家还没有安装它们,那么尽快安装它们吧。
import jiebaimport numpyimport codecsimport pandasimport matplotlib.pyplot as pltfrom wordcloud import WordCloud
接着,要分析词频,就要读取我们的《红楼梦》的文本数据,读取文本,我建议使用codecs包,它可以先通过设置文件的编码,对文件进行读入,这样子就不用边读遍转码了,非常实用。
file = codecs.open("D:\\红楼梦.txt", 'r', 'utf-8')content = file.read()file.close()
然后,我们就来分词了,中文分词,当然要用大名鼎鼎的jieba包,下面就是分词的方法。这里我们需要注意两点:1、为了提高分词的准确度,我们最好寻找我们分词的词库,这里我下载到了红楼梦的分词库,加载如jieba中,然后再进行分词。2、对于小说中,一个字的词,基本上算是无用的词,或者说是标点符号,因此这里我直接抛弃了。
jieba.load_userdict('D:\\红楼梦词库.txt');
segments = []segs = jieba.cut(content)for seg in segs:if len(seg)>1:segments.append(seg);为了方便统计词频,我们把结果保存在pandas的DataFrame中。segmentDF = pandas.DataFrame({'segment':segments})
接着我们来移除停用词,停用词包括我们日常的停用词和文言文中的停用词两部分,如下所示:
#移除停用词stopwords = pandas.read_csv("
用Python读红楼梦之——一、词云绘制
最新推荐文章于 2024-07-30 12:37:11 发布