如何计算DataFrame
中每个唯一行的出现次数?
df = {'x1': ['A','B','A','A','B','A','A','A'], 'x2': [1,3,2,2,3,1,2,3]}
df = pd.DataFrame(df)
df
x1 x2
0 A 1
1 B 3
2 A 2
3 A 2
4 B 3
5 A 1
6 A 2
7 A 3
我想获得
x1 x2 count
0 A 1 2
1 A 2 3
2 A 3 1
3 B 3 2
答案 0 :(得分:5)
IIUC您可以将参数as_index=False
作为参数传递给groupby
:
In [100]:
df.groupby(['x1','x2'], as_index=False).count()
Out[100]:
x1 x2 count
0 A 1 2
1 A 2 3
2 A 3 1
3 B 3 2
答案 1 :(得分:2)
您也可以删除重复的行:
In [4]: df.shape[0]
Out[4]: 8
In [5]: df.drop_duplicates().shape[0]
Out[5]: 4