Python 如何创建一个重复标志(列),该标志基于两列对重复行进行计数?
我有下面的数据框,希望在末尾创建一个名为“dup”的列,根据“Seasons”和“Actor”列显示行的显示次数。理想情况下,dup列如下所示:Python 如何创建一个重复标志(列),该标志基于两列对重复行进行计数?,python,pandas,numpy,dataframe,duplicates,Python,Pandas,Numpy,Dataframe,Duplicates,我有下面的数据框,希望在末尾创建一个名为“dup”的列,根据“Seasons”和“Actor”列显示行的显示次数。理想情况下,dup列如下所示: Name Seasons Actor dup 0 Stranger Things 3 Millie 1 1 Game of Thrones 8 Emilia 1 2 La Casa De Papel 4
Name Seasons Actor dup
0 Stranger Things 3 Millie 1
1 Game of Thrones 8 Emilia 1
2 La Casa De Papel 4 Sergio 1
3 Westworld 3 Evan Rachel 1
4 Stranger Things 3 Millie 2
5 La Casa De Papel 4 Sergio 1
这应该满足您的需要:
df['dup'] = df.groupby(['Seasons', 'Actor']).cumcount() + 1
输出:
Name Seasons Actor dup
0 Stranger Things 3 Millie 1
1 Game of Thrones 8 Emilia 1
2 La Casa De Papel 4 Sergio 1
3 Westworld 3 Evan Rachel 1
4 Stranger Things 3 Millie 2
5 La Casa De Papel 4 Sergio 2
正如Scott Boston提到的,根据您的标准,dup
列中的最后一行也应该是2
这里有一个类似的帖子,可以为你提供更多信息 是否希望重复行出现在数据帧中?索引5处的行是否正确,应该是2而不是1?