pandas.core.groupby.DataFrameGroupBy.ngroup
- DataFrameGroupBy.ngroup(ascending=True)[source]
-
Присваивает каждому из групп уникальное число от 0 до количества групп - 1.
Это обратное представление к cumcount. Обратите внимание, что номера групп соответствуют порядку, в котором группы отображаются при итерировании по объекту groupby, а не порядку их первого наблюдения.
Группы с отсутствующими ключами (где pd.isna() равно True) будут помечены NaN и будут пропущены при подсчете.
- Параметры:
-
- ascending:bool, по умолчанию True
-
Если False, нумерация будет обратной, от числа группы - 1 до 0.
- Возвращает:
-
- Series
-
Уникальные числа для каждой группы.
См. также
cumcount-
Нумерация строк в каждой группе.
Примеры
>>> df = pd.DataFrame({"color": ["red", None, "red", "blue", "blue", "red"]}) >>> df color 0 red 1 None 2 red 3 blue 4 blue 5 red >>> df.groupby("color").ngroup() 0 1.0 1 NaN 2 1.0 3 0.0 4 0.0 5 1.0 dtype: float64 >>> df.groupby("color", dropna=False).ngroup() 0 1 1 2 2 1 3 0 4 0 5 1 dtype: int64 >>> df.groupby("color", dropna=False).ngroup(ascending=False) 0 1 1 0 2 1 3 2 4 2 5 1 dtype: int64
© 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/2.2.2/reference/api/pandas.core.groupby.DataFrameGroupBy.ngroup.html