一、使用for循环
生成数据[randint(0,20) for _ in range(30)]得到
data = [18, 11, 16, 18, 2, 15, 6, 6, 4, 8, 16, 19, 8, 17, 6, 14, 7, 1, 3, 2, 8, 17, 4, 6, 18, 11, 15, 16, 3, 3] 要生成的数据格式肯定是一个字典类型,比如{1:5,2:3,5:5}这样的数据,那么就可以使用data的值做为健,0做为值。
c=dict.fromkeys(data,0)
然后放到for循环里进行遍历数据。
for x in data:c[x] += 1#打印c
{18: 3, 11: 2, 16: 3, 2: 2, 15: 2, 6: 4, 4: 2, 8: 3, 19: 1, 17: 2, 14: 1, 7: 1, 1: 1, 3: 3}
二、统计出现数据最多的前几项,我们一般使用collections.Counter对象。
第一步,导入
from collections import Counterc1=Counter(data)
就可以统计到了每个词出现的次数
c2.most_common(3)
[(8, 3), (13, 3), (9, 3)]
假如s是一个英文文本文件,那么能过下面就可以统计出词频出现最高的次数。非常好用。
data = Counter(re.split(r'\W+', s)) c =data.most_common(5)