DataFrame.mode(self, axis=0, numeric_only=False, dropna=True) → 'DataFrame'
获取沿选定轴的每个元素的mode(s) 。
一组值的mode是最常出现的值。它可以是多个值。
参数: | axis : {0 或 ‘index’, 1 或 ‘columns’}, 默认为 搜索mode时要迭代的axis: 1) 0或'index':获取各列的mode 2) 1或'columns':获取每一行的mode。 numeric_only : 如果为True,则仅适用于数字列。 dropna :bool,默认为True 不要考虑NaN / NaT的计数。 0.24.0版中的新功能。 |
返回值: |
每列或每行的mode |
例子
df = pd.DataFrame([('bird', 2, 2),
('mammal', 4, np.nan),
('arthropod', 8, 0),
('bird', 2, np.nan)],
index=('falcon', 'horse', 'spider', 'ostrich'),
columns=('species', 'legs', 'wings'))
df
species legs wings
falcon bird 2 2.0
horse mammal 4 NaN
spider arthropod 8 0.0
ostrich bird 2 NaN
默认情况下,不考虑缺失值,并且机翼的模式分别为0和2。第二行的种类和NaN分支包含,因为它们只有一种模式,但是DataFrame有两行
df.mode()
species legs wings
0 bird 2.0 0.0
1 NaN NaN 2.0
dropna=False NaN考虑设置值,它们可以是模式(如wings)
df.mode(dropna=False)
species legs wings
0 bird 2 NaN
设置numeric_only=True,仅计算数字列的模式,而忽略其他类型的列
df.mode(numeric_only=True)
legs wings
0 2.0 0.0
1 NaN 2.0
要计算列而不是行的模式,请使用axis参数:
df.mode(axis='columns', numeric_only=True)
0 1
falcon 2.0 NaN
horse 4.0 NaN
spider 0.0 8.0
ostrich 2.0 NaN