如何从具有词频的CSV文件生成词云
How to generate word cloud from CSV file with word frequencies
我有一个包含以下格式数据的 CSV 文件
column1 column2
hello 1
film 9
chicken 20
etc etc
如何使用python这样的文件生成词云?我尝试使用 Andreas Mueller 的 wordcloud 包,但它不接受 csv。我也尝试使用 generate_from_frequencies 选项
reader = csv.reader(open('wordcount.csv', 'r',newline='\n'))
d = {}
for k,v in reader:
d[k] = v
# Generate a word cloud image
wordcloud = WordCloud().generate_from_frequencies(d)
但一直出现如下错误。
File "wordcloudtest.py", line 22, in <module>
wordcloud = WordCloud().generate_from_frequencies(d)
File "C:\Users\Lenovo\Anaconda3\lib\site-packages\wordcloud\wordcloud.py", line 360, in generate_from_frequenci
for word, freq in frequencies]
File "C:\Users\Lenovo\Anaconda3\lib\site-packages\wordcloud\wordcloud.py", line 360, in <listcomp>
for word, freq in frequencies]
TypeError: unsupported operand type(s) for /: 'str' and 'float'
将值转换为浮点数。
d[k] = float(v)
CSVreader 为您提供字符串,而 generate_from_frequencies
需要从 str
到 float
的字典。
我有一个包含以下格式数据的 CSV 文件
column1 column2
hello 1
film 9
chicken 20
etc etc
如何使用python这样的文件生成词云?我尝试使用 Andreas Mueller 的 wordcloud 包,但它不接受 csv。我也尝试使用 generate_from_frequencies 选项
reader = csv.reader(open('wordcount.csv', 'r',newline='\n'))
d = {}
for k,v in reader:
d[k] = v
# Generate a word cloud image
wordcloud = WordCloud().generate_from_frequencies(d)
但一直出现如下错误。
File "wordcloudtest.py", line 22, in <module>
wordcloud = WordCloud().generate_from_frequencies(d)
File "C:\Users\Lenovo\Anaconda3\lib\site-packages\wordcloud\wordcloud.py", line 360, in generate_from_frequenci
for word, freq in frequencies]
File "C:\Users\Lenovo\Anaconda3\lib\site-packages\wordcloud\wordcloud.py", line 360, in <listcomp>
for word, freq in frequencies]
TypeError: unsupported operand type(s) for /: 'str' and 'float'
将值转换为浮点数。
d[k] = float(v)
CSVreader 为您提供字符串,而 generate_from_frequencies
需要从 str
到 float
的字典。