Pandas DataFrame DataFrame.max() 函式

Jinku Hu 2023年1月30日 2020年6月17日
  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 值。

Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

相關文章 - Pandas DataFrame