2017-09-13 325 views
-2

我试图使用python从csv文件中的列创建文字云。我已经安装了wordcloud,PIL,OS和Numpy,但我不确定如何只读这一列来创建词云。有人能够协助吗?谢谢!从CSV文件的列中创建Python中的文字云

+1

欢迎的话,请澄清你的问题,告诉你已经尝试过什么,你做了什么输出/错误,我们可以试着帮 – Scriptable

+1

这个问题不不符合StackOverflow的规则,因为它太宽泛,只会吸引基于意见的答案(所以期望它被关闭)。请转到:http://stackoverflow.com/help,然后阅读:http://stackoverflow.com/help/on-topic和:http://stackoverflow.com/help/how-to-ask。 –

回答

0

这是来自word_cloud site的修改示例。

我有一个'words.csv文件,在第一列中有文字(在下面的图片中选择并显示)和他们在下一个文件中的解释。

我们读csv文件(单词)的第一列,然后通过word_cloud运行。

import csv 
from wordcloud import WordCloud 


#read first column of csv file to string of words seperated 
#by tab 

your_list = [] 
with open('words.csv', 'rb') as f: 
    reader = csv.reader(f) 
    your_list = '\t'.join([i[0] for i in reader]) 


# Generate a word cloud image 
wordcloud = WordCloud().generate(your_list) 

# Display the generated image: 
# the matplotlib way: 
import matplotlib.pyplot as plt 
plt.imshow(wordcloud, interpolation='bilinear') 
plt.axis("off") 

# lower max_font_size 
wordcloud = WordCloud(max_font_size=40).generate(your_list) 
plt.figure() 
plt.imshow(wordcloud, interpolation="bilinear") 
plt.axis("off") 
plt.show() 

# The pil way (if you don't have matplotlib) 
# image = wordcloud.to_image() 
# image.show() 

图片
enter image description here