pandas.DataFrame.cumprod
- DataFrame.cumprod(axis=None, skipna=True, *args, **kwargs)[source]
-
Возвращает кумулятивное произведение по оси DataFrame или Series.
Возвращает DataFrame или Series тех же размеров, содержащие кумулятивное произведение.
- Параметры
-
- axis:{0 или ‘index’, 1 или ‘columns’}, по умолчанию 0
-
Индекс или имя оси. 0 эквивалентно None или ‘index’. Для Series этот параметр не используется и по умолчанию равен 0.
- skipna:bool, по умолчанию True
-
Исключать значения NA/null. Если вся строка/столбец содержит значения NA, результат будет NA.
- *args, **kwargs
-
Дополнительные ключевые слова не оказывают никакого влияния, но могут приниматься для совместимости с NumPy.
- Возвращаемое значение
-
- Series или DataFrame
-
Возвращает кумулятивное произведение Series или DataFrame.
См. также
core.window.expanding.Expanding.prod-
Аналогичная функциональность, но игнорирует
NaNзначения. DataFrame.prod-
Возвращает произведение по оси DataFrame.
DataFrame.cummax-
Возвращает кумуляльный максимум по оси DataFrame.
DataFrame.cummin-
Возвращает кумуляльный минимум по оси DataFrame.
DataFrame.cumsum-
Возвращает кумулятивную сумму по оси DataFrame.
DataFrame.cumprod-
Возвращает кумулятивное произведение по оси DataFrame.
Примеры
Series
>>> s = pd.Series([2, np.nan, 5, -1, 0]) >>> s 0 2.0 1 NaN 2 5.0 3 -1.0 4 0.0 dtype: float64
По умолчанию, значения NA игнорируются.
>>> s.cumprod() 0 2.0 1 NaN 2 10.0 3 -10.0 4 -0.0 dtype: float64
Для включения значений NA в операцию, используйте
skipna=False>>> s.cumprod(skipna=False) 0 2.0 1 NaN 2 NaN 3 NaN 4 NaN dtype: float64
DataFrame
>>> df = pd.DataFrame([[2.0, 1.0], ... [3.0, np.nan], ... [1.0, 0.0]], ... columns=list('AB')) >>> df A B 0 2.0 1.0 1 3.0 NaN 2 1.0 0.0По умолчанию, итерируется по строкам и находит произведение в каждом столбце. Это эквивалентно
axis=Noneилиaxis='index'.>>> df.cumprod() A B 0 2.0 1.0 1 6.0 NaN 2 6.0 0.0Для итерирования по столбцам и нахождения произведения в каждой строке, используйте
axis=1>>> df.cumprod(axis=1) A B 0 2.0 2.0 1 3.0 NaN 2 1.0 0.0
© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.DataFrame.cumprod.html