Spec-Zone.ru › pandas 0.19

pandas.core.groupby.GroupBy.cumcount

GroupBy.cumcount(ascending=True) [source]

Пронумеруйте каждый элемент в каждой группе от 0 до длины этой группы - 1.

По существу, это эквивалентно

>>> self.apply(lambda x: Series(np.arange(len(x)), x.index))
Параметры:

ascending : bool, по умолчанию True

Если False, нумерация в обратном порядке, от длины группы - 1 до 0.

См. также

pandas.Series.groupby, pandas.DataFrame.groupby, pandas.Panel.groupby

Примеры

>>> df = pd.DataFrame([['a'], ['a'], ['a'], ['b'], ['b'], ['a']],
...                   columns=['A'])
>>> df
   A
0  a
1  a
2  a
3  b
4  b
5  a
>>> df.groupby('A').cumcount()
0    0
1    1
2    2
3    0
4    1
5    3
dtype: int64
>>> df.groupby('A').cumcount(ascending=False)
0    3
1    2
2    1
3    1
4    0
5    0
dtype: int64

© 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.19.2/generated/pandas.core.groupby.GroupBy.cumcount.html

Spec-Zone.ru

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