DataFrame.cummax(axis=None, skipna=True, *args, **kwargs)
返回一个DataFrame或Series轴上的累积最大值。
返回包含累积最大值的相同大小的DataFrame或Series。
参数: | axis : {0 或 ‘index’, 1 或 ‘columns’}, 默认 0 索引或轴的名称。0等于None或' index '。 skipna : boolean, 默认 True 排除NA/null值。如果整个行/列是NA,那么结果将是NA。 *args, **kwargs : 附加关键字没有效果,但是可以接受与NumPy兼容。 |
返回: | cummax : Series 或 DataFrame |
例子,
1)沿着行方向计算累积最大值
import pandas as pd
# 创建一个示例 DataFrame
data = {
'A': [3, 2, 5, 1],
'B': [1, 4, 2, 3],
'C': [5, 3, 6, 4]
}
df = pd.DataFrame(data)
print("原始 DataFrame:")
print(df)
# 计算累积最大值
cummax_df = df.cummax()
print("\n沿着行方向的累积最大值:")
print(cummax_df)
2)沿着列方向计算累积最大值
import pandas as pd
# 创建一个示例 DataFrame
data = {
'A': [3, 2, 5, 1],
'B': [1, 4, 2, 3],
'C': [5, 3, 6, 4]
}
df = pd.DataFrame(data)
print("原始 DataFrame:")
print(df)
# 沿着列方向计算累积最大值
cummax_df_axis1 = df.cummax(axis=1)
print("\n沿着列方向的累积最大值:")
print(cummax_df_axis1)
3)Series 的 cummax 方法
import pandas as pd
import numpy as np
# 创建一个包含 NaN 的 Series
s = pd.Series([2, np.nan, 5, -1, 0])
print("原始 Series:")
print(s)
# 默认情况下,计算累积最大值,忽略 NA 值
print("\n累积最大值(忽略 NA 值):")
print(s.cummax())
# 在计算累积最大值时,不忽略 NA 值
print("\n累积最大值(不忽略 NA 值):")
print(s.cummax(skipna=False))
4)DataFrame 的 cummax 方法
# 创建一个包含 NaN 的 DataFrame
df = pd.DataFrame([[2.0, 1.0],
[3.0, np.nan],
[1.0, 0.0]],
columns=list('AB'))
print("原始 DataFrame:")
print(df)
# 沿着行方向计算累积最大值(默认 axis=0)
print("\n沿着行方向的累积最大值:")
print(df.cummax())
# 沿着列方向计算累积最大值
print("\n沿着列方向的累积最大值:")
print(df.cummax(axis=1))