📜  Python|熊猫 dataframe.mode()(1)

📅  最后修改于: 2023-12-03 15:19:21.143000             🧑  作者: Mango

Python | 熊猫 dataframe.mode()

简介

在数据分析中,我们经常需要找出数据集中出现频率最高的值。dataframe.mode()方法可以用于找到数据集中出现频率最高的值,返回众数(mode)。

语法
DataFrame.mode(axis=0, numeric_only=False)
  • axis:指定操作的轴(0表示行,1表示列,默认为0)
  • numeric_only:仅对数字类型的列进行操作(默认为False,表示所有类型的列都会被操作)
参数解释
  • axis:指定操作的轴。如果axis=0,则返回每一列中最常见的值;如果axis=1,则返回每一行中最常见的值。
  • numeric_only:可以指定是否仅对数字类型的列进行操作。如果numeric_only=True,则只对数字类型的列进行操作,其他类型的列将被忽略;如果numeric_only=False(默认值),则所有类型的列都会被操作。
返回值
  • DataFrame:返回一个包含数据集中出现频率最高的值的dataframe对象,包括每一列的众数以及它们的出现次数。
示例
import pandas as pd  

# 定义数据集  
data = {'Name':['Tom','Jack','Tom','Jack','Mary','Tom','Tom'], 'Age':[20, 21, 20, 21, 20, 20,20]}  
  
# 转换为dataframe格式  
df = pd.DataFrame(data)  

# 使用mode函数  
result = df.mode()  

print(result)

以上代码将输出如下结果:

   Name   Age
0   Tom  20.0
注意事项
  • 如果数据集中有多个众数,mode函数将返回一个包含所有众数的dataframe对象。
  • 如果数据集中所有值的出现次数都相等,则mode函数将返回数据集中第一个出现的值。
  • 如果存在缺失值,则mode函数默认情况下将忽略缺失值。如果要考虑缺失值,则需要通过添加dropna=False参数来实现。例如:df.mode(dropna=False)