2017-04-01 77 views
3

我是新来的scipy。我正在尝试获取字符串列的最大发生值。Scipy stats.mode未返回最大值出现

这里是我的代码:

import pandas as pd 
    import numpy as np 
    from scipy.stats import mode 

    print ("Maximum Occurence of Store Owner " + str(mode(df_units["StoreOwner"], nan_policy='omit').mode[0])) 

这里是店主数据的头几行:

0 Muhammed MacIntyre 
    1   Barry French 
    2   Barry French 
    3   Clay Rozendal 
    4  Carlos Soltero 

在上面的代码中,我试图让最大OCCURED店老板值来自数据帧。但是它正在返回所有的值。

回答

0

你可以这样做:

pdf = pd.DataFrame(dict(A=['a', 'a', 'b', 'c', 'd'])) 
pdf.A.value_counts().idxmax() 

这给了你所发生的价值最常见于数据帧pdf的列A

0

假设你的数据在一个熊猫Seriesser,你可以得到最频繁出现的字符串:

ser.value_counts()[ser.value_counts().index.max()]