词频统计在excel里,怎么用python生成词云图
时间: 2023-05-08 21:01:31 浏览: 536
首先,需要在Excel中复制要生成词云图的文本,并将其粘贴到文本编辑器中,将其保存为一个.txt文本文件。
接下来,需要使用Python的第三方库进行词频统计和生成词云图。其中,常用的库包括jieba和wordcloud。可以通过pip安装这些库。如:
```sh
pip install jieba
pip install wordcloud
```
接下来,打开Python编辑器,编写以下代码:
```py
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 对文本进行分词
words = jieba.lcut(text)
# 统计词频
word_counts = {}
for word in words:
if len(word) == 1: # 排除单个字符的词
continue
elif word == ' ': # 排除空格
continue
else:
word_counts[word] = word_counts.get(word, 0) + 1
# 生成词云图
wc = WordCloud(font_path='msyh.ttc', # 设置字体,这里使用微软雅黑
background_color='white', # 设置背景颜色
width=1000, height=600, # 设置尺寸
max_words=200, # 设置最大显示的词数
max_font_size=100) # 设置最大的字体大小
# 生成词云图
wc.generate_from_frequencies(word_counts)
# 绘制词云图
plt.imshow(wc, interpolation='bilinear')
plt.axis('off')
plt.show()
```
其中,`text.txt`为保存的文本文件,`jieba.lcut()`用于分词,`word_counts`用于统计词频,`WordCloud()`用于生成词云图,`generate_from_frequencies()`根据词频生成词云图,`imshow()`和`axis()`用于展示词云图。
运行代码即可生成词云图。可以根据需要调整代码中的参数来调整词云图的生成效果。
阅读全文