pandas.core.groupby.DataFrameGroupBy.ngroup#
- DataFrameGroupBy.ngroup(ascending=True)[источник]#
Нумерует каждую группу от 0 до количества групп - 1.
Это перечислительное дополнение к cumcount. Обратите внимание, что номера, присвоенные группам, соответствуют порядку, в котором группы будут видны при итерации по объекту groupby, а не порядку, в котором они были впервые обнаружены.
Группы с отсутствующими ключами (где pd.isna() равно True) будет помечен как NaN и будет пропущен при подсчете.
- Параметры:
- ascendingbool, по умолчанию 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