pandas cum系列函数

cum系列函数,都表示累计的意思,包括

  • cummax
  • cummin
  • cumsum
  • cumprod

这四个函数很相似,参数什么的基本一致


pandas.DataFrame.cummax

DataFrame.cummax(self, axis=None, skipna=True, *args, **kwargs)
Return cumulative maximum over a DataFrame or Series axis.

就是求一个累计的最大值,类似SQL中的max over()这种开窗函数

小栗子

s = pd.Series([2, np.nan, 5, -1, 0])
s.cummax()

就是按照某个轴,以此选取其中最大的一个值
索引为1的是NaN,是因为本身元素值就是NaN,默认其实是跳过NaN值的

df = pd.DataFrame([[2.0, 1.0],
                   [3.0, np.nan],
                   [1.0, 0.0]],
                   columns=list('AB'))

df.cummax()

默认是按照index来,也就是竖着来,一行一行
我们可以修改为axis=1

df.cummax(axis=1)

pandas.DataFrame.cummin

同上,这个就是取最小值的
DataFrame.cummin(self, axis=None, skipna=True, *args, **kwargs)

df.cummin()

因为默认是跳过NaN的,所以,注意最大值、最小值都是NaN

df.cummin(skipna=False)

pandas.DataFrame.cumsum

DataFrame.cumsum(self, axis=None, skipna=True, *args, **kwargs)

这个就是累计求和的函数,sum over()

df.cumsum()

pandas.DataFrame.cumprod

DataFrame.cumprod(self, axis=None, skipna=True, *args, **kwargs)

累计求乘积

df.cumprod()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。