如何使用Python从CSV文件生成word cloud

如何使用Python从CSV文件生成word cloud,python,csv,word-cloud,Python,Csv,Word Cloud,我有以下CSV文件: Emoji,CNT,Common 369,3988,yes sosad,2820,yes agree,1481,no clown,1273,yes dead,753,yes angry,561,no good,404,yes agger/dead,317,no cry,305,yes smile,300,yes 当我搜索相关信息时,它们只有一列。然而,我有一个CSV文件,必须使word

我有以下CSV文件:

    Emoji,CNT,Common
    369,3988,yes
    sosad,2820,yes
    agree,1481,no
    clown,1273,yes
    dead,753,yes
    angry,561,no
    good,404,yes
    agger/dead,317,no
    cry,305,yes
    smile,300,yes
当我搜索相关信息时,它们只有一列。然而,我有一个CSV文件,必须使word云图片。更重要的是,我需要使用上述文件,使更多的信息。如果“公共”列为“是”,则它将显示红色。否则,它将显示黑色

我搜索了很多信息。它们只有一列。然后它们只有一种颜色或随机颜色


因此,我无法得出尊重的结果。

首先,您需要正确阅读此csv文件,只需使用python的pandas库即可,如下所示:

然后,您可以将python的wordcloud库安装为

pip安装wordcloud


对于wordcloud的一些很好的示例,请按照前面的答案进行添加,这是一个示例代码,它可以满足您使用wordcloud库的要求。您需要将CSV拆分为两个字典,一个用于主数据,另一个用于颜色

将熊猫作为pd导入
将matplotlib.pyplot作为plt导入
从wordcloud导入wordcloud
#将数据作为数据帧加载
df=pd.read\u csv(csv\u文件位置)
#在数据框架之外创建字典
记录=df.to_dict(orient='records')
数据={x['Emoji']:x['CNT']用于记录中的x}
颜色={x['Emoji']:x['Common']表示记录中的x}
#从频率生成单词云
wc=WordCloud(背景颜色为白色,最大单词数为1000)
wc.根据_频率(数据)生成_
#颜色词取决于颜色词典
def color_func(字,**kwargs):
如果颜色。获取(单词)=“是”:
返回“rgb(0,255,0)”
其他:
返回“rgb(255,0,0)”
wc.recolor(color\u func=color\u func)
#显示最终结果
plt.imshow(wc,interpolation=“双线性”)
plt.轴(“关闭”)
plt.show()
这将为您提供如下图片: