关于Pandas版本: 本文基于 pandas2.2.0 编写。
关于本文内容更新: 随着pandas的stable版本更迭,本文持续更新,不断完善补充。
传送门: Pandas API参考目录
传送门: Pandas 版本更新及新特性
传送门: Pandas 由浅入深系列教程
本节目录
Pandas.Series.cumprod()
Pandas.Series.cumprod
方法用于返回 Series
每一个元素与前面所有元素的累积乘积。
计算公式:
-
累积乘积计算公式:
语法:
Series.cumprod(axis=None, skipna=True, *args, **kwargs)
返回值:
- Series or Series
参数说明:
axis 指定计算方向(行或列)
-
axis : {0 or ‘index’, 1 or ‘columns’}, default 0
axis
参数,对于Series
无效
skipna 忽略缺失值
-
skipna : bool, default True >
skipna
参数,用于指定求累积乘积的时候是否忽略缺失值,默认skipna=True
表示忽略缺失值:- True: 忽略缺失值。当遇到缺失值,会跳过缺失值,以缺失值上面的最近有效值继续后面的计算。
- False: 不忽略缺失。但是后面的所有结果将都是缺失值。
*args,**kwargs
- 为了保持与
Numpy
的兼容性而保留的参数,一般不需要传递任何内容。
相关方法:
示例:
测试文件下载:
本文所涉及的测试文件,如有需要,可在文章顶部的绑定资源处下载。
若发现文件无法下载,应该是资源包有内容更新,正在审核,请稍后再试。或站内私信作者索要。
例1、默认会跳过缺失值,以缺失值上面的最近有效值,进行后面的计算
import numpy as np
import pandas as pd
s = pd.Series([2.0, 1.0,3.0, np.nan, 0.0])
s.cumprod()
0 2.0
1 2.0
2 6.0
3 NaN
4 0.0
dtype: float64
例2、如果不忽略缺失值,后面所有的结果,将都是缺失值。
import numpy as np
import pandas as pd
s = pd.Series([2.0, 1.0,3.0, np.nan, 0.0])
s.cumprod(skipna=False)
0 2.0
1 2.0
2 6.0
3 NaN
4 NaN
dtype: float64