零基础 实现基于python2.7 的中文词频统计和词云绘制(二)

二、关于词频统计和词云生成的完整代码

打开python自带的IDLE,新建一个文件,然后把下面的代码粘进去保存。

#coding:utf-8
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt

import sys
reload(sys)
sys.setdefaultencoding('utf-8')
f = open(u'e://pythonciyun//test.txt','r').read() #本地建一个文本文档存放需要分析的文本内容,编码格式必须为utf-8
s={}
f=jieba.cut(f)
for w in f:
    if len(w) >1:
        previous_count=s.get(w,0)
        s[w] = previous_count +1
items = list(s.items())
items.sort(key= lambda x:x[1],reverse=True)
wf=open("output.txt",'w')  #统计出来的词频写到output文件中
for i in range(100):
    word,count = items[i]
    print word,count
    wf.write(word + ''+str(count)+'\n')
word_freq ={x[0]:x[1] for x in items}
wordcloud = WordCloud(font_path = 'c:\windows\Fonts\MSYH.TTF').fit_words(word_freq)
wf.close()
plt.imshow(wordcloud)
plt.axis("off")
plt.show()

保存后,点击Run->Run Module运行程序,会在程序所在目录生成output.txt文件,同时弹出词云图。

统计词频和生成词云的功能就完成了,剩下的就是打包成exe了。

三、打包生成exe

方法:打开cmd,切换到~\python27\script目录下,执行命令

pyinstaller -F  E:\python文件保存的目录\abc.py

命令执行成功后,会在script目录下生成一个dist文件,文件中的exe文件就是生成的可执行程序。

遇到问题:

在打包过程中遇到了很多的问题,花费了很大的精力,就在绝望无路的时候,偶然在一篇博文中找到了解决方法。这个这篇博文的地址,我遇到的问题这篇博文里解释的很清楚。http://www.pianshen.com/article/996685916/

另外,打包过程中还出现一个错误:str object has no attribute 'items'。这是依赖包的版本问题导致的,需要升级一下setuptools,

pip install -U --pre setuptools

本篇文章介绍使用Python进行英文文献词频统计词云绘制的方法。 1. 数据收集 首先需要收集要分析的英文文献数据。可以从网上搜索并下载文献的text或者pdf格式文件。 2. 数据处理 使用Python读入文献文件,并根据需要进行数据清洗和预处理,例如去除标点符号、停用词和数字等。可以使用nltk库进行自然语言处理。 import string from nltk.corpus import stopwords from nltk.tokenize import word_tokenize from collections import Counter #读入文献文件 with open(r"path/to/file.txt","r", encoding="utf-8") as f: text = f.read() #去除标点符号和数字 text = text.translate(str.maketrans("", "", string.punctuation+string.digits)) #分词并去除停用词 tokens = word_tokenize(text.lower()) stop_words = set(stopwords.words("english")) filtered_words = [word for word in tokens if word not in stop_words] 3. 数据分析 使用Python统计词频,并将结果保存为字典或DataFrame,方便后续绘制词云或更进一步的分析。 #计算词频 word_count = Counter(filtered_words) #将结果保存为pandas DataFrame import pandas as pd df = pd.DataFrame.from_dict(word_count, orient='index', columns=['count']) 4. 词云绘制 使用Python绘制词云,可以使用wordcloud库。在绘制词云的时候可以对每个单词附上对应的词频。 #导入wordcloud库 from wordcloud import WordCloud import matplotlib.pyplot as plt #将结果转换为字典格式 word_dict = {} for key in word_count: word_dict[key] = word_count[key] #绘制词云 wc = WordCloud(background_color="white", max_words=1000) wc.generate_from_frequencies(word_dict) plt.figure(figsize=(12,6)) plt.imshow(wc, interpolation='bilinear') plt.axis("off") plt.show() 完成以上代码后,就可以得到类似如下的词云图: 如图所示,大的词表示在文献中出现的频率更高的单词。通过词云来直观地展现文献中的主题和关键词,有助于提高阅读效率和理解文章主旨。 本篇文章介绍了如何使用Python进行英文文献词频统计词云绘制。通过这些技术,不仅可以快速获取文献中的关键词,也可以更深入地理解文献的内容和结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值