2017-05-17 9 views
1

IDと名前の2つのグループに累積を行うにはどうすればよいですか?パンダグループの件数

id name 
1 name1 
1 name1 
1 name2 
2 name3 
2 name3 
2 name3 

を、私はそれがどのように見えるしたい:例えば、私が持っているIDにそれぞれの名前のために基本的に

id name cumcount 
1 name1 1 
1 name1 2 
1 name2 1 
2 name3 1 
2 name3 2 
2 name3 3 

ランニングタリー。

答えて

4

あなたはgroupby.cumcountを使用することができます。

df['cumcount'] = df.groupby(['id', 'name']).cumcount() + 1 

df 
# id name cumcount 
#0 1 name1 1 
#1 1 name1 2 
#2 1 name2 1 
#3 2 name3 1 
#4 2 name3 2 
#5 2 name3 3 
関連する問題