计算重复行并填充列

4

我已经创建了一个DataFrame,现在需要计算每个重复行的数量(例如通过df ['Gender'])。假设“Male”出现两次,“Female”出现三次,我需要将此列制成:

Gender   Occurrence
Male     1
Male     2
Female   1
Female   2
Female   3

有没有用Pandas解决这个问题的方法?


1个回答

8

在按性别分组后使用cumcount方法:

df = pd.DataFrame({'Gender':['Male','Male','Female','Female','Female']})   
df['Occurrence'] = df.groupby('Gender').cumcount() + 1
print(df)

   Gender  Occurrence
0    Male           1
1    Male           2
2  Female           1
3  Female           2
4  Female           3

计数从0开始,因此我在那里添加了+1


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接