Python3 如何统计序列中元素出现的频率

Python3 如何统计序列中元素出现的频率,第1张

概述#!/usr/bin/env python3# -*- coding: UTF-8 -*-from random import randintdata = [randint(0, 20) for _ in range(30)]d = dict.fromkeys(data, 0)1. 迭代for i in data: d[i] += 1print(d)2. 使用标准...
#!/usr/bin/env python3# -*- Coding: UTF-8 -*-from random import randintdata = [randint(0,20) for _ in range(30)]
1. 迭代
'''第一种方法'''# 先将列表转化为字典,重复的键保留一个,初始化值为0d = {}for i in data:    d[i] = 0# 也可以使用字典 fromkeys() 函数# 以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值# d = dict.fromkeys(data,0)# 初始化完成后再对列表进行迭代,当出现一个重复的键对其加1for i in data:    d[i] += 1print(d)    '''第二种方法'''# 使用字典 get() 函数返回指定键的值,如果值不在字典中返回默认值d2 = {}for i in data:    d2[i] = d2.get(i,0) + 1print(d2)
2. 使用标准库中的 collections.Counter 统计元素出现的频率
from collections import Counterd3 = Counter(data)print(dict(d3))# most_common(3) 是取出频率最高的3个元素print(d3.most_common(3))

运行结果:

Geek-Mac:Downloads zhangyi$ python3 Nice.py {5: 3,19: 2,20: 1,15: 2,10: 4,3: 2,2: 3,8: 1,1: 4,4: 2,7: 1,18: 1,16: 1,9: 1,6: 1,0: 1}{5: 3,0: 1}[(10,4),(1,(5,3)]
总结

以上是内存溢出为你收集整理的Python3 如何统计序列中元素出现的频率全部内容,希望文章能够帮你解决Python3 如何统计序列中元素出现的频率所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1189656.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存