给定列表的查找模式和第二模式

时间:2019-02-12 23:54:13

标签: python pandas

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']

0 个答案:

没有答案