网易首页 > 网易号 > 正文 申请入驻

Python:词频统计流程及综合示例

0
分享至

在文本分析(Text Analysis)、日志处理以及自然语言处理(Natural Language Processing,NLP)中,词频统计(word frequency counting)是最基础也最常见的数据处理任务之一。

所谓词频统计,是指统计某个词、字符或模式在文本中出现的次数,并据此分析文本的结构、主题或信息分布。

在 Python 中,词频统计通常由字符串处理、文本清洗、分词、数据统计等多个步骤组成。

一、词频统计中的典型处理思路

无论是英文文本还是中文文本,词频统计通常遵循类似的处理流程。

排序与输出(Ranking)

1、文本规范化

文本规范化的目的是统一文本形式,使同一词项不会因为大小写或字符差异而被统计为不同词。

常见的包括:

• str.lower():将字符串统一转换为小写

• str.casefold():更严格的大小写归一化(适用于大小写无关比较)

• str.strip()、str.lstrip()、str.rstrip():去除多余空白字符

例如:

text = text.lower()

2、文本清洗

文本清洗用于去除标点符号、噪声字符或无关符号。

常见的有:

• str.replace():简单字符串替换

• str.translate() 与 str.maketrans():批量字符替换或删除

相关常量有:

• string.punctuation:提供 ASCII 标点字符集合

例如:

text = text.translate(table)

相关方法有:

• re.sub():使用正则表达式进行复杂文本清洗

例如:

text = re.sub(r"[^a-z\s]", " ", text)

3、文本切分(分词)

文本切分用于将连续字符串拆分为可以统计的单位(词或 token)。

常见的有:

• str.split():按空白或指定分隔符切分

• str.splitlines():按行切分文本

例如:

words = text.split()

中文分词常使用第三方库 :

• jieba.lcut():中文分词函数

例如:

words = jieba.lcut(text)

4、条件过滤

在统计前,通常需要过滤掉停用词、数字或无意义字符。

常见的有:

• str.isalpha():判断字符串是否全部为字母

• str.isdigit():判断字符串是否为数字

• str.isalnum():判断字符串是否由字母或数字组成

也可以使用集合(set)进行停用词过滤。

例如:

filtered_words = [w for w in words if w not in stopwords]

5、词频统计

词频统计通常使用字典方法或 collections 模块的 Counter 对象。

常用有:

• dict.get():安全读取字典键值并更新计数

例如:

freq[w] = freq.get(w, 0) + 1

常用 有:

• collections.Counter():快速统计可迭代对象中的元素频次

• Counter.most_common():返回出现次数最多的元素

例如:

freq = Counter(words)

6、排序与输出

在完成词频统计后,通常需要按照词频大小对结果进行排序,并输出高频词项。排序有助于快速识别文本中的高频词汇,从而观察文本的主要主题或信息分布。

常见的做法是使用内置函数 对统计结果排序,或使用 提供的 most_common() 方法直接获取高频词。

相关函数包括:

• sorted():对可迭代对象进行排序

• dict.items():获取字典中的键值对

• Counter.most_common():返回出现频率最高的元素

例如:

result = sorted(freq.items(), key=lambda item: item[1], reverse=True)

上述代码中:

• freq.items() 返回 (word, count) 形式的键值对

• item[1] 表示按词频进行排序

• reverse=True 表示按降序排列

排序后即可遍历输出结果:

    print(word, count)

如果使用 collections.Counter,则可以直接获取高频词:

top_words = freq.most_common(10)

这样可以直接得到出现次数最多的若干个词项,常用于关键词分析或文本主题初步观察。

通过这些字符串方法、字典方法以及标准库函数的组合,可以构建完整的词频统计流程。从简单的文本统计到复杂的自然语言处理任务,这些工具都构成了 Python 文本分析的基础。

二、综合示例

下面分别以英文基础文本、中文文本以及文件级英文文本为例,展示这一流程在不同场景中的具体实现方式。

1、英文词频统计基础示例

下面给出一个最基础的英文词频统计示例,仅使用字符串方法和字典。

    

2、中文词频统计基础示例

中文文本通常没有天然的空格分词结构,因此需要借助分词工具。

Python 中最常用的中文分词库是 Jieba。

    

3、英文词频统计进阶示例

在真实文本分析中,通常需要:

• 从文件读取文本

• 清理标点和噪声字符

• 使用高效统计工具

假设有文本文件:

sample.txt

代码示例:

    

小结

词频统计是文本分析和自然语言处理中的基础操作,其核心流程通常包括:文本规范化、文本清洗、分词、过滤和统计。在 Python 中,可以从最简单的字符串方法、字典统计开始实现基础词频分析;在更复杂的场景中,则常结合 string 模块、re 正则表达式、collections.Counter 以及分词工具(如 Jieba)构建完整的文本处理流程。通过这些工具的组合,可以高效完成英文或中文文本的词频统计任务。


点赞有美意,赞赏是鼓励

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
天道好轮回!沙俄抢去的百万平方公里沃土,如今为何成“无人区”

天道好轮回!沙俄抢去的百万平方公里沃土,如今为何成“无人区”

手机相册中的国际风云
2026-09-14 17:25:35
GTA6首位配音演员确认:你可能早就在预告片里听过他

GTA6首位配音演员确认:你可能早就在预告片里听过他

队友祭天法力无边
2026-09-14 23:01:10
苹果Apple Watch官方表带已超1000款,最贵售价17999元

苹果Apple Watch官方表带已超1000款,最贵售价17999元

IT之家
2026-09-15 09:03:17
深圳市罗湖区委原书记范德繁,拟提名为地级市市长候选人

深圳市罗湖区委原书记范德繁,拟提名为地级市市长候选人

中国青年报
2026-09-15 22:28:42
广东,拆迁款刚到账,34岁小伙天天喝酒吃肉,5个月后人没了

广东,拆迁款刚到账,34岁小伙天天喝酒吃肉,5个月后人没了

笔墨V
2026-09-11 00:31:06
越南前领导人黎笋的长子在受访时坦言,当年越南敢于和中国交战,完全依靠三项关键条件,缺少其中任何一项都不会发起这场战争

越南前领导人黎笋的长子在受访时坦言,当年越南敢于和中国交战,完全依靠三项关键条件,缺少其中任何一项都不会发起这场战争

唠叨说历史
2026-09-15 14:43:42
男子网购国际机票无法登机!因突现隐形第三程,无签证被拒

男子网购国际机票无法登机!因突现隐形第三程,无签证被拒

半岛晨报
2026-09-15 18:14:52
我国越来越多的人患糖尿病?建议:停止食用“6物”,保护胰岛

我国越来越多的人患糖尿病?建议:停止食用“6物”,保护胰岛

汪医生健康百科
2026-09-14 20:35:03
“一个月陪睡一两次”:网红魏莹的榜一大哥照片曝光,他身价过亿,是个大企业家

“一个月陪睡一两次”:网红魏莹的榜一大哥照片曝光,他身价过亿,是个大企业家

江山挥笔
2026-08-25 16:40:36
豪门皇马经常在德甲买到正品!本赛季翻车买到水中贵族 1.4亿迪奥曼德有点对不起身价

豪门皇马经常在德甲买到正品!本赛季翻车买到水中贵族 1.4亿迪奥曼德有点对不起身价

80后体育大蜀黍
2026-09-15 21:41:06
重磅:乌克兰突袭俄罗斯本土!摧毁别尔哥罗德后勤枢纽

重磅:乌克兰突袭俄罗斯本土!摧毁别尔哥罗德后勤枢纽

项鹏飞
2026-09-15 21:27:33
副乳都出来了!演员彭小苒上热搜,不是新剧上线,也不是演技吸睛,而是直播间的网友看不过去了

副乳都出来了!演员彭小苒上热搜,不是新剧上线,也不是演技吸睛,而是直播间的网友看不过去了

火山詩话
2026-09-15 04:47:49
2亿成本上映2次2000万票房,2年后才敢网播,这电影就是个笑话!

2亿成本上映2次2000万票房,2年后才敢网播,这电影就是个笑话!

得得电影
2026-09-14 17:09:33
把儿子“甩”给前夫,46岁董洁迎来新转机,在云南重新焕发第二春

把儿子“甩”给前夫,46岁董洁迎来新转机,在云南重新焕发第二春

往史过眼云烟
2026-09-15 19:14:44
朝鲜缺电远比越南严重,中国却始终不向其送电,说白了,一旦输电线搭过去,恐怕会送出个无底洞般的烂账

朝鲜缺电远比越南严重,中国却始终不向其送电,说白了,一旦输电线搭过去,恐怕会送出个无底洞般的烂账

人生录
2026-08-13 00:05:10
高僧私通女助手后续:高僧还私通其他女子!淫乱用的大圆桌被销毁

高僧私通女助手后续:高僧还私通其他女子!淫乱用的大圆桌被销毁

胡侃社会百态
2026-09-14 18:27:41
骚扰电话只静音不挂断,等着对方主动挂掉,后果远比想象的复杂

骚扰电话只静音不挂断,等着对方主动挂掉,后果远比想象的复杂

小鹿姐姐情感说
2026-09-14 09:18:59
“乌克兰人必须回国”,德国选择党主席称应停止援乌,要求对乌方高额索赔

“乌克兰人必须回国”,德国选择党主席称应停止援乌,要求对乌方高额索赔

新京报
2026-09-14 15:09:43
美记:快船交易完成后人数超15人上限 或裁掉克里斯蒂、布鲁姆

美记:快船交易完成后人数超15人上限 或裁掉克里斯蒂、布鲁姆

北青网-北京青年报
2026-09-15 20:05:03
1米3袖珍美女:嫁给1米48男孩,婚后丈夫奇迹长高,最终不欢而散

1米3袖珍美女:嫁给1米48男孩,婚后丈夫奇迹长高,最终不欢而散

梦醉为红颜一笑
2026-09-05 01:01:29
2026-09-16 01:24:49
MediaTea
MediaTea
专业的数字媒体、新媒体技术
2176文章数 86关注度
往期回顾 全部

科技要闻

芯片产业链蒸发超5000亿美元,特朗普大怒

头条要闻

盗窃犯刑满释放前8天改判死缓 检方称其"天生的罪犯"

头条要闻

盗窃犯刑满释放前8天改判死缓 检方称其"天生的罪犯"

体育要闻

AK47到底有多强?

娱乐要闻

谢霆锋示爱王菲、和前妻划清界限

财经要闻

黄仁勋接到特朗普电话:AI风险论是"骗局"

汽车要闻

无缝衔接?!谁懂刚上市就提车是什么体验...

态度原创

数码
健康
手机
本地
公开课

数码要闻

荣耀MagicOS 11已正式发布:YOYO成精、苹果破壁、老机型白捡60GB!

脑血管里有个“不定时炸弹”?

手机要闻

互传联盟将发布“碰一碰互传”技术标准:小米/OPPO/vivo/荣耀10月推送

本地新闻

不止胖东来!许昌藏着半部三国史

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版