37,717
社区成员
发帖
与我相关
我的任务
分享
Traceback (most recent call last):
File "E:/python/work2018/ZhiHu/mytest.py", line 103, in <module>
main()
File "E:/python/work2018/ZhiHu/mytest.py", line 98, in main
wordcloud = wordcloud.fit_words(word_frequence_list)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\wordcloud\wordcloud.py", line 328, in fit_words
return self.generate_from_frequencies(frequencies)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\wordcloud\wordcloud.py", line 347, in generate_from_frequencies
frequencies = sorted(frequencies.items(), key=itemgetter(1), reverse=True)
AttributeError: 'list' object has no attribute 'items'
# 去掉停用词
stopwords = pd.read_csv("stopwords.txt", index_col=False, quoting=3, sep="\t", names=['stopword'], encoding='utf-8') # quoting=3全不引用
words_df = words_df[~words_df.segment.isin(stopwords.stopword)]
# 统计词频
words_stat = words_df.groupby(by=['segment'])['segment'].agg({"计数": numpy.size})
words_stat = words_stat.reset_index().sort_values(by=["计数"], ascending=False)
# 用词云进行显示
wordcloud = WordCloud(font_path="simhei.ttf", background_color="white", max_font_size=80)
word_frequence = {x[0]: x[1] for x in words_stat.head(1000).values}
word_frequence_list = []
for key in word_frequence:
temp = (key, word_frequence[key])
word_frequence_list.append(temp)
wordcloud = wordcloud.fit_words(word_frequence_list)
plt.imshow(wordcloud)