import pandas as pd
import numpy as np
from collections import Counter
def mode(x):
"""returns a list, might be more than one mode"""
counts = Counter(x)
max_count = max(counts.values())
return [x_i for x_i, count in counts.items() if count == max_count]
num_grp = [57,61,65,63,63,64,64,65,63,67,66,71,75,67,67,70,74,81,85]
num_friends = ['Silver','Platinum','Gold','Gold','Silver','Silver',
'Bronze','Silver','Platinum','Platinum','Silver','Gold','Platinum',
'Silver','Platinum','Silver','Platinum','Platinum','Gold','Silver']
d={
'Policy':['Silver','Platinum','Gold','Gold','Silver','Silver','Bronze',
'Silver','Platinum','Platinum','Silver','Gold','Platinum','Silver',
'Platinum','Silver','Platinum','Platinum','Gold','Silver'],
'ID':[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]}
print("Mode for group list:",mode(num_grp))
print("Mode for friend list:",mode(num_friends))
f = pd.DataFrame(d)
f['Policy'].mode()
也使用此代码,当使用“整数”(num_grp
)列表时,将给出两个输出。但是,当采用“字符串”(num_friends
)的列表时,它将给出如上所示的输出
与字符串列表一起使用时,相同的代码仅给出单个“模式”值,
上面的代码应提供输出:['Silver','Platinum'] 相反,它给出单个输出['Silver']