Python中的Wordcloud包
Wordcloud包通过可视化帮助我们了解文本内容中单词的频率。
为了实现这一功能,我们首先需要安装一些包,如pandas、matplotlib和Wordcloud。
让我们来看一下每个包的安装步骤-
Pandas的安装
Pandas是在Jupyter Notebook中实现数据分析和可视化的强大工具。可以用以下方式将其导入到我们的源代码中-
import pandas as pd
pd指的是使用别名来创建数据框的过程,它使代码的可读性更高。
Pandas可以通过两种方式进行安装-
1. 使用命令提示符
首先,让我们看看如何使用命令提示符来实现我们的目标。
- 打开命令提示符
- 输入以下命令- pip install pandas
- 点击’Enter’,软件包将开始下载到我们的系统中。
在Linux中,可以在终端中使用相同的命令来安装Pandas。
2. 使用Anaconda Navigator
在我们的系统中安装Pandas的第二种方式是使用Anaconda Navigator。
- 打开Anaconda Navigator。
- 点击’Environment’标签,转到创建选项,为您的系统设置Pandas。
- 点击“创建”按钮以创建一个Pandas环境。
- 在软件包列表中,选择’All’以获得过滤器。
- 转到搜索栏,搜索’Pandas’,选择’Pandas软件包’。
- 右键单击复选框,转到“标记为特定版本安装”。
- 选择要安装的版本,然后点击’Apply’按钮来安装软件包。
Matplotlib安装
Matplotlib是一个广泛而有趣的库,适用于热衷于从数据中推断结果的人,其中包括散点图、直方图、箱线图等等,使我们能够更容易地理解数据。
可以按照以下步骤安装Matplotlib:
- 使用命令提示符
可以通过在命令提示符中使用以下命令来安装Matplotlib:
pip install matplotlib
- 使用Anaconda
我们可以通过在Anaconda Prompt中键入以下命令来安装matplotlib-
conda install matplotlib
验证安装
我们可以通过在终端中键入以下给定程序来验证 matplotlib 是否已成功安装在我们的系统中-
import matplotlib
matplotlib.__version__
安装词云
如前所述,它可以通过可视化的方式给我们提供在文本中出现最频繁的单词的想法。
让我们来看看安装步骤-
可以通过以下步骤安装词云-
- 使用命令提示符
可以通过在命令提示符中使用给定的命令来安装词云到我们的系统中。
pip install wordcloud
- 使用Anaconda
我们可以通过在 Anaconda提示符 中输入以下命令来安装wordcloud。
conda install -c conda-forge wordcloud
现在让我们来看一下简单的程序,展示了如何在Python中使用 wordcloud 。
我们从一个网站上拿到了这段文字,并将其保存为 sunflowers1.txt 文件。
sunflowers1.txt
"Sunflowers are heliotropic, which means that they turn their flowers to follow the movement of the Sun across the sky east to west, and then returns at night to face the east, ready again for the morning sun. Heliotropism happens during the earlier stages before the flower grows heavy with seeds.
There are tons of varieties of sunflowers available today, so there's bound to be one that fits your garden. Choose between those with branching stems or single stems, those that produce ample pollen for pollinators or are pollen-free (best for bouquets), those that stay small or tower above the rest of the garden, or those that produce edible seeds! "
代码实现
import re
import matplotlib.pyplot as plt
from wordcloud import WordCloud, STOPWORDS
text = open("/content/sunflowers1.txt", "r").read()
# Clean text
text = re.sub(r'==.*?==+', '', text)
text = text.replace('\n', '')
# Define a function to plot word cloud
def plot_cloud(wordcloud):
# Set figure size
plt.figure(figsize=(40, 30))
# Display image
plt.imshow(wordcloud)
# No axis details
plt.axis("off")
# Generate word cloud
wordcloud = WordCloud(width = 3000, height = 2000, random_state=1, background_color='salmon', colormap='Pastel1', collocations=False, stopwords = STOPWORDS).generate(text)
plot_cloud(wordcloud)
输出: