2016-04-12 6 views
0

Как быстро добавить столбец, который подсчитывает количество повторений группы [user, class].Создание столбца count в pandas dataframe

Например,

user class val 
1 2 23 
1 2 23 
1 3 29 
1 3 29 
1 4 11 

Код GroupBy user и class и создать столбец, который находится в диапазоне от 1 (или 0) к числу встречаемости этой группы.

user class Mean n_count 
1 2 23 1 
1 2 23 2 
1 3 29 1 
1 3 29 2 
1 4 11 1 

ответ

2

Вы можете использовать groupby и затем cumcount:

>>> df["n_count"] = df.groupby(["user", "class"]).cumcount() + 1 
>>> df 
    user class val n_count 
0  1  2 23  1 
1  1  2 23  2 
2  1  3 29  1 
3  1  3 29  2 
4  1  4 11  1 
Смежные вопросы