python 对给定可迭代集合统计出现频率,并排序的方法
给定一个可迭代sequence,对其中的值进行出现次数统计:
方法1:
defget_counts(sequence): counts={} forxinsequence: ifxincounts: counts[x]+=1 else: counts[x]=1 returncounts
方法2:
利用python中内置的collections
fromcollectionsimportdefaultdict defget_counts2(sequence): counts=defaultdict(int)#所有的值均会被初始化为0 forxinsequence: counts[x]+=1 returncounts
方法3:
fromcollectionsimportCounter counts=Counter(sequence) #其中可以用counts.most_common(10)对出现最多的十个倒序排列
然后对得到的统计排序:
deftop_count(count_dic,n=10):#默认取最大的n=10个值 value_key_pairs=[(count,data)forcounts,dataincout_dict.items()] value_key_pairs.sort() #sorted(value_key_pairs)两者均可 returnvalue_key_pairs[-n:]
以上这篇python对给定可迭代集合统计出现频率,并排序的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。