中文词频统计
一.下载一篇中文长篇小说并从文件中读取待分析文本
f = open('xiaoshuo.txt', 'r', encoding='utf-8') # 通过文件读取字符串 str str = f.read() f.close() print(str)
二.安装jieba
三.
(1)更新词库,加入所分析对象的专业词汇。
(2)生成词频统计
(3)排序
(4)排除语法型词汇,代词、冠词、连词等停用词。
(5)输出词频最大TOP20,把结果存放到文件里
import jieba f=open('白夜行.txt','r',encoding='utf-8') lines=f.read() f.close() sep = ',。?!;:“”‘’-——<_/>' for en in sep: lines=lines.replace(en, '') lines = list(jieba.cut_for_search(lines)) strSet = set(lines) #print(len(strSet), strSet) strDict = dict() for word in strSet: strDict[word] = lines.count(word) #print(len(strDict), strDict) wcList = list(strDict.items()) #print(wcList) wcList.sort(key=lambda x: x[1], reverse=True) #print(wcList) for i in range(20): print(wcList[i])
四.生成词云