pandas.core.groupby.SeriesGroupBy.ngroup
- SeriesGroupBy.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.SeriesGroupBy.ngroup.html