怎样求列表中数据的众数(奇偶数个数均能满足)
求 grade_list=[100,98,87,65,82,99,92,99,100] 的众数
网上看了不少的方法,但是大多都是只能够获取到单个众数。
然后,尝试了一下将列表中的数据转换成pd.series, 然后通过索引取值的方式来取众数,效果还不错(刚刚开始学python, 第一次发文章,激动的心颤抖的手哇~~哈哈哈)
代码
def grade_mode(list):
dic_list = {} # 创建一个以list中数据为keys, 出现频数为value的字典
for i in range(len(list)):
if list[i] in dic_list.keys():
dic_list[list[i]] += 1
else:
dic_list.setdefault(list[i], 1)
import pandas as pd
d = pd.Series(dic_list) # 将字典转换为pd.series
grade_mode = d[d == d.max()].index # 索引频数最高的数据
for i in grade_mode:
print(i)
grade_mode(grade_list)