Spec-Zone.ru › pandas 0.24

pandas.DataFrame.cumprod

DataFrame.cumprod(axis=None, skipna=True, *args, **kwargs) [source]

Возвращает кумулятивное произведение по оси DataFrame или Series.

Возвращает DataFrame или Series того же размера, содержащие кумулятивное произведение.

Параметры:
axis : {0 or ‘index’, 1 or ‘columns’}, default 0

Индекс или имя оси. 0 эквивалентно None или ‘index’.

skipna : boolean, default True

Исключить значения NA/null. Если вся строка/столбец состоит из NA, результат будет NA.

*args, **kwargs :

Дополнительные ключевые слова не влияют, но могут приниматься для совместимости с NumPy.

Возвращает:
cumprod : Series or DataFrame

См. также

core.window.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–2012, 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/0.24.2/reference/api/pandas.DataFrame.cumprod.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API