Pandas DataFrame DataFrame.max() 函数

Jinku Hu 2023年1月30日
  1. pandas.DataFrame.max() 语法
  2. 示例代码:DataFrame.max() 方法沿列轴寻找最大值
  3. 示例代码: DataFrame.max() 方法沿行轴寻找最大值
  4. 示例代码:DataFrame.max() 方法寻找最大值,忽略 NaN
Pandas DataFrame DataFrame.max() 函数

Python Pandas DataFrame.max() 函数计算 DataFrame 对象在指定轴上的最大值。

pandas.DataFrame.max() 语法

DataFrame.max(axis=None, skipna=None, level=None, numeric_only=None, **kwargs)

参数

axis 沿行(axis=0)或列(axis=1)求最大值
skipna 布尔型。排除 NaN 值(skipna=True)或包含 NaN 值(skipna=False)
level 如果轴为 MultiIndex,则沿特定级别求最大值
numeric_only 布尔型。对于 numeric_only=True,只包括 floatintboolean
**kwargs 函数的附加关键字参数

返回值

如果没有指定 level,则返回请求轴的最大值的 Series,否则返回最大值的 DataFrame

示例代码:DataFrame.max() 方法沿列轴寻找最大值

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 2, 3],
                   'Y': [4, 3, 8, 4]})
print("DataFrame:")
print(df)

maxs = df.max()

print("Max of Each Column:")
print(maxs)

输出:

DataFrame:
   X  Y
0  1  4
1  2  3
2  2  8
3  3  4
Max of Each Column:
X    3
Y    8
dtype: int64

它得到了 XY 两列的最大值,最后返回一个 Series 对象,其中包含每列的最大值。

在 Pandas 中,要找到 DataFrame 中某一列的最大值,我们只调用该列的 max() 函数。

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 2, 3],
                   'Y': [4, 3, 8, 4]})
print("DataFrame:")
print(df)

maxs = df["X"].max()

print("Max of Each Column:")
print(maxs)

输出:

DataFrame:
   X  Y
0  1  4
1  2  3
2  2  8
3  3  4
Max of Each Column:
3

它只给出 DataFrameX 列的最大值。

示例代码: DataFrame.max() 方法沿行轴寻找最大值

import pandas as pd

df = pd.DataFrame({'X': [1, 2, 7, 5, 10],
                   'Y': [4, 3, 8, 2, 9],
                   'Z': [2, 7, 6, 10, 5]})
print("DataFrame:")
print(df)

maxs=df.max(axis=1)

print("Max of Each Row:")
print(maxs)

输出:

DataFrame:
    X  Y   Z
0   1  4   2
1   2  3   7
2   7  8   6
3   5  2  10
4  10  9   5
Max of Each Row:
0     4
1     7
2     8
3    10
4    10
dtype: int64

它计算所有行的最大值,最后返回一个包含每行最大值的 Series 对象。

示例代码:DataFrame.max() 方法寻找最大值,忽略 NaN

我们使用 skipna 参数的默认值,即 skipna=True 沿指定的轴找到 DataFrame 的最大值,忽略 NaN 值。

import pandas as pd

df = pd.DataFrame({'X': [1, 2, None, 3],
                   'Y': [4, 3, 7, 4]})
print("DataFrame:")
print(df)

maxs=df.max(skipna=True)
print("Max of Columns")
print(maxs)

输出:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  3.0
2  NaN  7.0
3  3.0  4.0
Max of Columns
X    3.0
Y    7.0
dtype: float64

如果我们设置 skipna=True,它将忽略 DataFrame 中的 NaN。它允许我们沿列轴计算 DataFrame 的最大值,忽略 NaN 值。

import pandas as pd

df = pd.DataFrame({'X': [1, 2, None, 3],
                   'Y': [4, 3, 7, 4]})
print("DataFrame:")
print(df)

maxs=df.max(skipna=False)
print("Max of Columns")
print(maxs)

输出:

DataFrame:
     X  Y
0  1.0  4
1  2.0  3
2  NaN  7
3  3.0  4
Max of Columns
X    NaN
Y    7.0
dtype: float64

这里,我们得到了列 X 的最大值为 NaN,因为列 X 中存在 NaN 值。

作者: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

DelftStack.com 创始人。Jinku 在机器人和汽车行业工作了8多年。他在自动测试、远程测试及从耐久性测试中创建报告时磨练了自己的编程技能。他拥有电气/电子工程背景,但他也扩展了自己的兴趣到嵌入式电子、嵌入式编程以及前端和后端编程。

LinkedIn Facebook

相关文章 - Pandas DataFrame