使用Python统计txt文件中的词频

python 复制代码
# 统计词频
import jieba
jieba.load_userdict(r'\百度分词词库.txt') #载入用户自定义词典,使分词结果更准确
stops_word_path = r'\stopwords_all.txt' #载入停用词表,此处使用的是哈工大停用词表
stopwords = pd.read_table(stops_word_path,encoding='utf-8',quoting=3)['words'].tolist()
stopwords.append('\n') #在停用词中加入换行符和空格,也可以自定义其他不需要统计词频的词语
stopwords.append(' ')
# stopwords
dic = dict()
file_path = r'C:\Users\Shy0418\Desktop\text.txt' #定义要统计的txt文件路径
with open(file_path, encoding='utf-8', mode='r+') as file_read:
    lines = file_read.readlines()
    for line in lines:
        # print(list(jieba.cut(line)))
        for word in list(jieba.cut(line)):
            if word not in stopwords:
                if word in dic.keys():
                    dic[word] += 1
                else:
                    dic[word] = 1
            else:
                continue
dic
word_freq = sorted(dic.items(), key = lambda kv:(kv[1], kv[0]), reverse=True) #按词频降序排列
word_freq #结果以词典的形式展示:{词语:词频}
相关推荐
MyBFuture2 分钟前
C# 哈希表与堆栈队列实战指南
开发语言·windows·c#·visual studio
网安_秋刀鱼3 分钟前
【java安全】java安全基础
java·开发语言·安全·web安全
Data_agent12 分钟前
OOPBUY模式淘宝1688代购系统搭建指南
开发语言·爬虫·python
Ashley_Amanda14 分钟前
JavaScript 中数组的常用处理方法
开发语言·javascript·网络
报错小能手15 分钟前
C++ STL bitset 位图
开发语言·c++
张哈大16 分钟前
AI Ping 上新限免:GLM-4.7 与 MiniMax-M2.1 实测对比
人工智能·python
乘凉~17 分钟前
【Linux作业】Limux下的python多线程爬虫程序设计
linux·爬虫·python
钓鱼的肝18 分钟前
GESP系列(3级)小杨的储蓄
开发语言·数据结构·c++·笔记·算法·gesp
xwill*28 分钟前
pytorch中项目配置文件的管理与导入方式
人工智能·python
float_六七28 分钟前
行级与块级元素:核心区别与应用场景
开发语言·前端·javascript