python如何对给定可迭代集合统计出现频率并排序-创新互联

这篇文章给大家分享的是有关python如何对给定可迭代集合统计出现频率并排序的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联公司是一家以成都网站建设、网页设计、品牌设计、软件运维、网站推广、小程序App开发等移动开发为一体互联网公司。已累计为成都茶艺设计等众行业中小客户提供优质的互联网建站和软件开发服务。

给定一个可迭代sequence,对其中的值进行出现次数统计:

方法1:

def get_counts(sequence):
 counts = {}
 for x in sequence:
  if x in counts:
   counts[x] += 1
  else:
   counts[x] = 1
 return counts

方法2:

利用python中内置的collections

from collections import defaultdict

def get_counts2(sequence):
 counts = defaultdict(int) #所有的值均会被初始化为0
 for x in sequence:
  counts[x] +=1 
 return counts

方法3:

from collections import Counter

counts = Counter(sequence)
#其中可以用counts.most_common(10)对出现最多的十个倒序排列

然后对得到的统计排序:

def top_count(count_dic, n=10): #默认取大的n=10个值
 value_key_pairs = [(count,data) for counts,data in cout_dict.items()]
 value_key_pairs.sort()
 #sorted(value_key_pairs) 两者均可
 return value_key_pairs[-n:]

感谢各位的阅读!关于“python如何对给定可迭代集合统计出现频率并排序”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


标题名称:python如何对给定可迭代集合统计出现频率并排序-创新互联
转载来于:http://myzitong.com/article/dgeoec.html