Python DataFrame.mode():求众数(附带实例)
众字有多的意思,顾名思义,众数就是一组数据中出现次数最多的数,它代表了数据的一般水平。
在 Python 中,通过调用 DataFrame 对象的 mode() 方法可以实现众数计算,语法格式如下:
首先看一组原始数据,如下图所示:

图 1 原始数据
【实例】计算学生各科成绩的众数。下面计算语文、数学和英语三科成绩的众数,逐列计算众数,以及计算数学成绩的众数,主要代码如下:
在 Python 中,通过调用 DataFrame 对象的 mode() 方法可以实现众数计算,语法格式如下:
DataFrame.mode(axis=0, numeric_only=False, dropna=True)参数说明:
- axis:axis=0 或 'index' 表示逐行计算;axis=1 或 'column' 表示逐列计算,默认值为 0;
- numeric_only:布尔型,指明是否仅处理数字,默认值为 False。如果为 True,则仅适用于数字列;
- dropna:布尔型,指明是否删除缺失值,默认值为 True;
- 返回值:返回 DataFrame 对象。
首先看一组原始数据,如下图所示:

图 1 原始数据
【实例】计算学生各科成绩的众数。下面计算语文、数学和英语三科成绩的众数,逐列计算众数,以及计算数学成绩的众数,主要代码如下:
print(df.mode()) # 三科成绩的众数 print(df.mode(axis=1)) # 逐列计算众数 print(df['数学'].mode()) # 数学成绩的众数运行结果为:
三科成绩的众数: 语文 数学 英语 0 130 120 130 逐列计算众数: 0 110 1 130 2 130 数学成绩的众数: 0 120