Counter是Python中用于统计元素频次的类,继承自字典,支持传入列表、字符串等可迭代对象进行计数,提供most_common、elements、update等方法,并支持加减交并运算,适用于词频分析、数据清洗等场景。

collections.Counter 是 Python 中一个非常实用的类,位于 collections 模块中,用来统计可迭代对象中元素的出现次数。它本质上是一个字典的子类,键是元素,值是该元素出现的次数。
基本用法
Counter 接收一个可迭代对象(如列表、字符串、元组等)作为输入,自动统计每个元素的频次。
from collections import Countercnt = Counter([‘a’, ‘b’, ‘c’, ‘a’, ‘b’, ‘a’])print(cnt) # 输出: Counter({‘a’: 3, ‘b’: 2, ‘c’: 1})
也可以传入字符串:
cnt = Counter(“hello”)print(cnt) # 输出: Counter({‘l’: 2, ‘h’: 1, ‘e’: 1, ‘o’: 1})
常用操作
Counter 提供了一些方便的方法和操作,适合做频次分析。
立即学习“Python免费学习笔记(深入)”;
most_common(n):返回出现次数最多的前 n 个元素及其计数,按从高到低排序。cnt.most_common(2) # 如:[(‘a’, 3), (‘b’, 2)]elements():返回一个迭代器,列出所有元素(按计数重复)。list(cnt.elements()) # 得到 [‘a’, ‘a’, ‘a’, ‘b’, ‘b’, ‘c’]update() 和 subtract():分别用于增加或减少计数。
支持数学运算
Counter 还支持加减交并等集合风格的运算:
c1 = Counter(a=2, b=1)c2 = Counter(a=1, b=3)c1 + c2 # 相加:Counter({‘b’: 4, ‘a’: 3})c1 – c2 # 相减(只保留正数):Counter({‘a’: 1})c1 & c2 # 取最小值:Counter({‘a’: 1, ‘b’: 1})c1 | c2 # 取最大值:Counter({‘b’: 3, ‘a’: 2})
基本上就这些。Counter 简洁高效,特别适合处理统计任务,比如词频分析、数据清洗、判断字符异位词等场景。不复杂但容易忽略。
以上就是python中collections.Counter是什么?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1379998.html
微信扫一扫
支付宝扫一扫