如何获取 pandas 中几乎没有相同模式值的列的模式 pandas

How to get the mode of a column in pandas where there are few of the same mode values pandas

我有一个数据框,我想获取特定列的模式。 我正在使用:

freq_mode = df.mode()['my_col'][0]

但是我收到错误:

ValueError: ('The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()', 'occurred at index my_col')

我猜这是因为我几乎没有相同的模式。 我需要任何模式,没关系。我如何使用 any() 来获得任何存在的模式?

对我来说,您的代码可以很好地处理示例数据。

如有必要select 来自mode 的系列的第一个值使用:

freq_mode = df['my_col'].mode().iat[0]

我们可以看到一列

df=pd.DataFrame({"A":[14,4,5,4,1,5], 
                 "B":[5,2,54,3,2,7], 
                 "C":[20,20,7,3,8,7], 
                 "train_label":[7,7,6,6,6,7]}) 
X=df['train_label'].mode()
print(X)

DataFrame

    A   B   C  train_label
0  14   5  20            7
1   4   2  20            7
2   5  54   7            6
3   4   3   3            6
4   1   2   8            6
5   5   7   7            7

Output

0    6
1    7
dtype: int64