DataFrame.expanding(min_periods=1, axis=no_default, method='single')
min_periods=1
- минимальное количество наблюдений в окне, необходимое для получения значения. В противном случае результатом будет np.nan
.
axis=no_default
- ключевой аргумент axis
устарел с версии 2.1.0. Теперь для использования axis=1
необходимо транспонировать DataFrame.T
.
index
, обрабатывает строки.columns
, обрабатывает столбцы.Для Series
аргумент не используется и по умолчанию равен 0.
method='single'
- выполняет операцию скользящего окна для одного столбца или строки (single
) или для всего объекта (table
). Этот аргумент реализуется только при указании engine='numba'
в вызове метода.
typing.Expanding
.DataFrame.expanding()
:Метод DataFrame.expanding()
модуля pandas
предоставляет вычисление расширяющегося окна Series
/DataFrame
.
Расширяющееся окно дает значение агрегированной статистики со всеми данными, доступными к этому моменту времени. Поскольку эти вычисления являются частным случаем скользящей статистики, то они реализованы в pandas
таким образом, что следующие два вызова эквивалентны:
>>> import pandas as pd >>> df = pd.DataFrame(range(5)) >>> df.rolling(window=len(df), min_periods=1).mean() # 0 # 0 0.0 # 1 0.5 # 2 1.0 # 3 1.5 # 4 2.0 >>> df.expanding(min_periods=1).mean() # 0 # 0 0.0 # 1 0.5 # 2 1.0 # 3 1.5 # 4 2.0
Функция | Что делает |
Expanding.count([numeric_only]) | Вычисляет расширяющееся количество наблюдений, отличных от NaN. |
Expanding.sum([numeric_only, engine, ...]) | Вычисляет расширяющуюся сумму |
Expanding.mean([numeric_only, engine, ...]) | Вычисляет расширяющееся среднее |
Expanding.median([numeric_only, engine, ...]) | Вычисляет расширяющуюся медиану. |
Expanding.var([ddof, numeric_only, engine, ...]) | Вычисляет расширяющуюся дисперсию. |
Expanding.std([ddof, numeric_only, engine, ...]) | Вычисляет расширяющееся стандартное отклонение. |
Expanding.min([numeric_only, engine, ...]) | Вычисляет расширяющийся минимум. |
Expanding.max([numeric_only, engine, ...]) | Вычисляет расширяющийся максимум. |
Expanding.corr([other, pairwise, ddof, ...]) | Вычисляет расширяющуюся корреляцию. |
Expanding.cov([other, pairwise, ddof, ...]) | Вычисляет расширяющуюся ковариацию выборки. |
Expanding.skew([numeric_only]) | Вычисляет расширяющуюся несмещенную асимметрию. |
Expanding.kurt([numeric_only]) | Вычисляет расширяющееся определение эксцесса Фишера без смещения. |
Expanding.apply(func[, raw, engine, ...]) | Вычисляет расширяющуюся пользовательскую функцию агрегирования. |
Expanding.aggregate(func, *args, **kwargs) | Агрегирует с использованием одной или нескольких операций над указанной осью. |
Expanding.quantile(q[, interpolation, ...]) | Вычисляет расширяющийся квантиль. |
Expanding.sem([ddof, numeric_only]) | Вычисляет расширяющуюся стандартную ошибку среднего значения. |
Expanding.rank([method, ascending, pct, ...]) | Вычисляет расширяющийся ранг. |
DataFrame.expanding()
:>>> import pandas as pd >>> import numpy as np >>> df = pd.DataFrame({"B": [0, 1, 2, np.nan, 4]}) >>> df # B # 0 0.0 # 1 1.0 # 2 2.0 # 3 NaN # 4 4.0
min_periods
Расширяющаяся сумма с 1 по сравнению с 3 наблюдениями, необходимыми для вычисления значения.
>>> df.expanding(1).sum() # B # 0 0.0 # 1 1.0 # 2 3.0 # 3 3.0 # 4 7.0 >>> df.expanding(3).sum() # B # 0 NaN # 1 NaN # 2 3.0 # 3 3.0 # 4 7.0