对不起,我来晚了
作者:互联网
一
前几天在文章《迟到的 2018 年度总结(文内有福利)》中,我使用了分词和词云的展示效果,有不少同学都在后台问我是怎么实现的,也希望能用到自己的总结里面去。
其实主要思路是参考大佬 Python之禅(专业研究 Python,有兴趣的同学可以关注) 的文章《北大开源中文分词工具pkuseg-python,我用张小龙的3万字演讲做了统计》,然后稍微做了下变通。
为了让这个工具更易用,我给加了简单的 UI 界面,这样所有人都可以无门槛的拿来即用,用完即走了。
而问题就是时间拖的有点晚了,对不起,希望还能对你有所帮助。
二
因为很多人问,所以我把工具共享出来,需要的同学请后台回复「tool」获取完整源代码。
下面是图解使用说明:
下面是关键部分的代码实现:
def on_button_check(self, event): """响应 开始统计 按钮点击操作""" content = self._readfiles(self.text_file2.GetValue()) zhuanyong = self._readfiles(self.text_zhuanyong.GetValue()) zhuanyong_list = []
for one in zhuanyong.split('\n'): zhuanyong_list.append(one) seg = pkuseg.pkuseg(user_dict=zhuanyong_list) text = seg.cut(content) stopwords = self._readfiles(self.text_stop.GetValue()) new_text = []
for word in text:
if word not in stopwords: new_text.append(word) counter = Counter(new_text) print(counter.most_common(20)) word_list = " ".join(new_text) pic_path = self._cur_file_dir(self.text_pic.GetValue()) coloring = numpy.array(Image.open(pic_path)) wc = WordCloud(background_color="white", mask=coloring, font_path="simfang.ttf", max_font_size=84, random_state=15, ) myword = wc.generate(word_list) #展示词云图 plt.imshow(myword) plt.axis("off") plt.show()
以上,希望对你有所帮助,有任何问题欢迎留言和我沟通。
标签:word,对不起,text,self,list,我来,zhuanyong,new 来源: https://blog.51cto.com/sylan215/2919794