中文词频统计

下载一长篇中文文章。

从文件读取待分析文本。

news = open('gzccnews.txt','r',encoding = 'utf-8')

安装与使用jieba进行中文分词。

pip install jieba

import jieba

list(jieba.lcut(news))

生成词频统计

排序

排除语法型词汇,代词、冠词、连词

输出词频最大TOP20

import jieba

fo = open('douluo.txt','r',encoding='utf-8').read()

wordsls = jieba.lcut(fo)
wcdict = {}
# for word in wordsls:
#   if len(word)==1:
#    continue
#   else:
#    wcdict[word]=wcdict.get(word,0)+1
for i in set(wordsls):
    wcdict[i]=wordsls.count(i)
    delete={'','','','自己','','已经','','','','没有','','他们','','我们','','什么','一个',
            '','','','','','','','','','','','','','','','','','','','',
            '','','','','','','','','','','','','','','','','','','','',
            '','','','','','','','','','','','','','','','','','','',
            '','','','',' ','','-','\n','','','','','','','','','','.','',''}
for i in delete:
    if i in wcdict:
        del wcdict[i]
sort_word = sorted(wcdict.items(), key = lambda d:d[1], reverse = True)  # 排序
for i in range(20):  # 输出
    print(sort_word[i])

# fo = open("douluo1.txt", "r",encoding='utf-8')
# print ("文件名为: ", fo.name)
# for index in range(5):
#     line = next(fo)
#     print ("第 %d 行 - %s" % (index, line))
#
# # 关闭文件
# fo.close()

转载于:https://www.cnblogs.com/chenguangpeng/p/8663251.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值