Python统计词频的几种方法小结
作者:西西弗斯推石头 发布时间:2023-10-22 05:35:41
标签:Python,统计词频
本文介绍python统计词频的几种方法,供大家参考
方法一:运用集合去重方法
def word_count1(words,n):
word_list = []
for word in set(words):
num = words.counts(word)
word_list.append([word,num])
word_list.sort(key=lambda x:x[1], reverse=True)
for i in range(n):
word, count = word_list[i]
print('{0:<15}{1:>5}'.format(word, count))
说明:运用集合对文本字符串列表去重,这样统计词汇不会重复,运用列表的counts方法统计频数,将每个词汇和其出现的次数打包成一个列表加入到word_list中,运用列表的sort方法排序,大功告成。
方法二:运用字典统计
def word_count2(words,n):
counts = {}
for word in words:
if len(word) == 1:
continue
else:
counts[word] = counts.get(word, 0) + 1
items = list(counts.items())
items.sort(key=lambda x:x[1], reverse=True)
for i in range(n):
word, count = items[i]
print("{0:<15}{1:>5}".format(word, count))
方法三:使用计数器
def word_count3(words,n):
from collections import Counter
counts = Counter(words)
for ch in "": # 删除一些不需要统计的元素
del counts[ch]
for word, count in counts.most_common(n): # 已经按数量大小排好了
print("{0:<15}{1:>5}".format(word, count))
来源:https://blog.csdn.net/m0_58960107/article/details/129120731


猜你喜欢
- 本文实例讲述了Go语言实现定时器的方法。分享给大家供大家参考。具体实现方法如下:package mainimport ( &quo
- 1.定义变量时可以直接赋值 DECLARE @Id int = 5 2.Insert 语句可以一次插入多行数据 INSERT INTO St
- python 使用第三方库requests-toolbelt 上传文件流,内容如下所示:# pip install requests-too
- Python 是一门动态、面向对象语言。其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性。除了语言本身的设计目的之外
- 目前全球疫情仍然比较严重,为了能清晰地看到疫情爆发以来至现在全球疫情的变化趋势,我绘制了一张疫情变化地图。 废话不多说,先上图下面就来重点介
- jinjia和vue.js默认的模板转义符都是{{}}目前的解决办法是修改vue.js的转义符,将原来的{{}}替换为其他标签,我改为{[]
- 前篇我们稍微学习了Python中时间的获取,这次继续学习日期的时区转换,格式化等等。开发中常用的日期操作还有哪些?时区转换显示日期格式化秒数
- 本文实例讲述了JS+HTML实现的圆形可点击区域。分享给大家供大家参考,具体如下:方法一:<img>通过usemap映射到<
- 前言Python 的一大优点就是丰富的类库,所以我们经常会用 pip 来安装各种库,所以对于Python开发用户来讲,PIP安装软件包是家常
- 最近,我有机会在一个真实的 Golang 场景中使用泛型,同时寻找与 Stream filter(Predicate<? super
- 环境:Anaconda自带的编译器——Spyder最近才开使用conda,发现conda 就是 yyds,爱啦~一、Tensor(张量)im
- 一.配置版本Java JDK 1.8.0_111Python 3.9.6Spark 3.1.2Hadoop 3.2.2二.配置环境 
- 统计表中常常以本年累计、上年同期(累计)、当期(例如当月)完成、上月完成为统计数据,并进行同比、环比分析。如下月报统计表所示样例,本文将使用
- python之标准库htmlhtml库是用于解析HTML的一个工具,是python自带的标准库之一。html库位置:__init__.py文
- 微信小程序全称微信公众平台·小程序,原名微信公众平台·应用号(简称微信应用号)声明•微信小程序开发工具类似于一个轻量级的IDE集成开发环境,
- 公网与私有网络的判断其实十分简单,只要记住私有网络的三个网段。不过,对于记性不好的人或者学识不是很高的机器来说,有一种判断方法还是有必要的。
- 引言周六来公司写点东西,刚好有个icon颜色不对,ui又不在公司,那么就只能自己动手丰衣足食了。呜呜呜,好想住公司,都不用上下班了。svg填
- 源码:#路飞骷髅import turtle as t#黄底帽子t.pu()t.goto(0,200)t.circle(-130,-80)t.
- 利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信。首先,先了解下SocketServer模块中可供使用的类:Bas
- 今天给大家分享小编遇到的一个坑有关python递归调用中的坑:打印有值, 返回却None问题。问题:前几天写一个小面试题, 忽然有个惊悚的发