Pandas DataFrame.mode(~) 方法计算 DataFrame 的每列或行的众数。如果某些值的计数相同,则将返回它们的所有众数。
参数
1.axis | int 或 string | optional
是否按行或按列计算众数:
|
轴 |
说明 |
|---|---|
|
|
为每列计算众数。 |
|
|
为每一行计算众数。 |
默认情况下,axis=0 。
2. numeric_only | None 或 boolean | optional
允许的值如下:
|
值 |
说明 |
|---|---|
|
|
仅考虑数字行/列(例如 |
|
|
尝试使用所有类型(例如字符串和日期)进行计算,并在无法计算众数时抛出错误。 |
默认情况下,numeric_only=False 。
3. dropna | boolean | optional
是否忽略 NaN 。默认情况下,dropna=True 。
返回值
DataFrame 保存源 DataFrame 的每行或每列的模式。
例子
考虑以下 DataFrame :
df = pd.DataFrame({"A":[2,3,3], "B":[3,4,5], "C":[2,2,2]})
df
A B C
0 2 3 2
1 3 4 2
2 3 5 2
逐列模式
按列计算众数:
df.mode() # or axis=0
A B C
0 3.0 3 2.0
1 NaN 4 NaN
2 NaN 5 NaN
在此,请注意以下事项:
-
第一列的模式是
3。 -
第二列的模式是
3、4和5因为这些值中的每一个都只出现一次。 -
由于
mode(~)返回所有模式,因此我们最终得到 3 行,NaN用于填充空条目。 -
返回类型为
DataFrame。
逐行模式
要按行计算模式,请设置 axis=1 :
df.mode(axis=1)
0 1 2
0 2.0 NaN NaN
1 2.0 3.0 4.0
2 2.0 3.0 5.0
指定numeric_only
考虑以下 DataFrame :
df = pd.DataFrame({"A":[4,4], "B":[2,True]})
df
A B
0 4 2
1 4 True
这里,B 列包含混合类型。
False
默认情况下, numeric_only=False ,这意味着混合类型的行/列也会被考虑:
df.mode() # numeric_only=False
A B
0 4.0 True
1 NaN 2
True
通过设置 numeric_only=True ,仅考虑数字行/列:
df.mode(numeric_only=True)
A
0 4
请注意 B 列如何被忽略,因为它包含混合类型。
指定 dropna
考虑以下带有一些缺失值的DataFrame:
df = pd.DataFrame({"A":[3,3,pd.np.nan],"B":[5,pd.np.nan,pd.np.nan]})
df
A B
0 3.0 5.0
1 3.0 NaN
2 NaN NaN
默认情况下, dropna=True ,这意味着所有 NaN 都会被忽略:
df.mode() # dropna=True
A B
0 3.0 5.0
考虑缺失值:
df.mode(dropna=False)
A B
0 3.0 NaN
在此,请注意以下事项:
-
即使列
A包含NaN,也会返回正确的模式 (3)。 -
B列的众数为NaN,因为它出现了两次,而值5仅出现了一次。
相关用法
- Python Pandas DataFrame mod方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame mean方法用法及代码示例
- Python Pandas DataFrame memory_usage方法用法及代码示例
- Python Pandas DataFrame merge方法用法及代码示例
- Python Pandas DataFrame melt方法用法及代码示例
- Python Pandas DataFrame median方法用法及代码示例
- Python Pandas DataFrame mask方法用法及代码示例
- Python Pandas DataFrame min方法用法及代码示例
- Python Pandas DataFrame mad方法用法及代码示例
- Python Pandas DataFrame mul方法用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame copy方法用法及代码示例
- Python Pandas DataFrame pow方法用法及代码示例
- Python Pandas DataFrame insert方法用法及代码示例
- Python Pandas DataFrame lt方法用法及代码示例
- Python Pandas DataFrame all方法用法及代码示例
- Python Pandas DataFrame unstack方法用法及代码示例
- Python PySpark DataFrame filter方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | mode method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
