python - 如何对列表中的列表进行频率统计?
仅有的幸福
仅有的幸福 2017-05-18 11:02:05
[Python讨论组]

例如此列表:

[['software', 'foundation'], ['of', 'the'], ['the', 'python'], ['software', 'foundation'],['of', 'the'], ['software', 'foundation']]


# 进行频率统计,例如输出结果为:
("['software','foundation']", 3), ("['of', 'the']", 2), ("['the', 'python']", 1)
仅有的幸福
仅有的幸福

全部回复(3)
漂亮男人
# coding:utf8
from collections import Counter
a = [['software', 'foundation'], ['of', 'the'], ['the', 'python'], ['software', 'foundation'],['of', 'the'], ['software', 'foundation']]
print Counter(str(i) for i in a)   # 以字典形式返回统计结果
print Counter(str(i) for i in a).items()  # 以列表形式返回统计结果

# -------------- map方法 --------
print Counter(map(str, a))   # 以字典形式返回统计结果
print Counter(map(str, a)).items()  # 以列表形式返回统计结果
伊谢尔伦
from collections import Counter
data = [['software', 'foundation'], ['of', 'the'], ['the', 'python'], ['software', 'foundation'],['of', 'the'], ['software', 'foundation']]
cnt = Counter(map(tuple, data))
print(list(cnt.items()))
習慣沉默
from itertools import groupby
data = ....
print [(k, len(list(g)))for k, g in groupby(sorted(data))]
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号