下载一中文长篇小说,并转换成UTF-8编码。

使用jieba库,进行中文词频统计,输出TOP20的词及出现次数。

排除一些无意义词、合并同一词。

import jieba
txt=open('yanxi.txt','r',encoding='utf-8').read()
words=jieba.cut(txt)

dic={}
for w in words:
    if len(w)==1:
        continue
    else:
        dic[w]=dic.get(w,0)+1

wc=list(dic.items())
wc.sort(key=lambda x:x[1],reverse=True)

for i in range(20):
    print(wc[i])

对词频统计结果做简单的解读。

('黛玉', 10)
('宝玉', 9)
('红楼梦', 4)
('落花', 3)
('葬花', 3)
('黛玉正', 2)
('之间', 2)
('误会', 2)
('不是', 2)
('正当', 2)
('引出', 2)
('声音', 2)
('不由', 2)
('正巧', 2)
('前去', 2)
('再次', 2)
('由此', 2)
('西厢', 2)
('不忍', 2)
('黛玉为', 2)

import jieba
txt=open('yanxi.txt','r',encoding='utf-8').read()
words=list(jieba.cut(txt))

exc={'','正当','','便','','','','',''}
keys=set(words)
keys=set(words)-exc
dic={}
for w in keys:
    dic[w]=words.count(w)

wc=list(dic.items())
wc.sort(key=lambda x:x[1],reverse=True)

for i in range(20):
    print(wc[i])

(',', 71)
('。', 12)
('黛玉', 10)
('宝玉', 9)
('之', 5)
('听', 4)
('红楼梦', 4)
('亦', 4)
('葬花', 3)
('落花', 3)
('、', 3)
('又', 3)
('《', 3)
('着', 3)
('》', 3)
('而', 3)
('至', 3)
('的', 2)
('误会', 2)
('却', 2)
>>>

posted on 2017-09-29 21:48  034陈妍希  阅读(129)  评论(0编辑  收藏  举报