中文词频统计及词云制作
1.中软国际华南区技术总监曾老师还会来上两次课,同学们希望曾老师讲些什么内容?
在工作上一般用python操作什么,python的实际应用之类的,也可以虚拟一个项目来进行实践。
2.中文分词
- 下载一中文长篇小说,并转换成UTF-8编码。
- 使用jieba库,进行中文词频统计,输出TOP20的词及出现次数。
- **排除一些无意义词、合并同一词。
- **使用wordcloud库绘制一个词云。
import jieba txt = "茶花女.txt" book = open(txt,'r',encoding='utf-8').read() words = jieba.lcut(book) ls = [] counts = {} for word in words: ls.append(word) if len(word) == 1: continue else: counts[word] = counts.get(word,0)+1 ex = {'一个','什么','这个','这样','这些','这种','已经','如果','的话'} for word in ex: del(counts[word]) items = list(counts.items()) items.sort(key = lambda x:x[1], reverse = True) for i in range(20): word , count = items[i] print ("{:<10}{:>5}".format(word,count)) from wordcloud import WordCloud import matplotlib.pyplot as plt w=" ".join(words) wc=WordCloud().generate(w) plt.imshow(wc) plt.axis("off") plt.show()
运行结果:
可以看出重点角色叫“玛格丽特”,次角“阿尔芒”,线索围绕“女人”、“爱情”。