使用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 #结果以词典的形式展示:{词语:词频}
相关推荐
熊猫钓鱼>_>几秒前
Q-Learning详解:从理论到实战的完整指南
人工智能·python·架构·大模型·llm·machine learning·q-learning
落羽的落羽4 分钟前
【项目】C++从零实现JsonRpc框架——项目引入
linux·服务器·开发语言·c++·人工智能·算法·机器学习
墨月白5 分钟前
【Python】程序设计基本方法
开发语言·python
TAN-90°-9 分钟前
Java 5——final 抽象 接口
java·开发语言
Andy11 分钟前
C++ 容器适配器_栈_队列_双端队列
开发语言·网络·c++
吴声子夜歌13 分钟前
Java——显示锁
java·开发语言
CLX050513 分钟前
SQL排查JOIN查询中索引失效的常见情况_数据类型隐式转换
jvm·数据库·python
思麟呀17 分钟前
在C++基础上理解Csharp-2
开发语言·jvm·c++·c#
桀人18 分钟前
类和对象——上篇
开发语言·c++
zzzsde22 分钟前
【Linux】线程概念与控制(3):线程ID&&C++封装线程
linux·运维·服务器·开发语言·算法