计算熊猫组内重复和唯一的值

时间:2019-01-16 18:15:03

标签: python pandas group-by

假设我有一个数据框:

DF1:
Class | Age | City        | Color
  A   | 20  | Los Angeles | Blue
  A   | 20  | Los Angeles | Blue
  A   | 20  | Los Angeles | Red
  B   | 25  | Phoenix     | Yellow

我想获得每个重复项和唯一值的唯一计数,因此输出如下所示:

DF2:
Class | Age | City        | Color   | Count
  A   | 20  | Los Angeles | Blue    |  2
  A   | 20  | Los Angeles | Red     |  1
  B   | 25  | Phoenix     | Yellow  |  1

在这种情况下,Class A,Age 20,City洛杉矶和Color蓝色出现两次。我尝试使用nunique,但是我的输出没有将重复的值折叠在一起。

df = df.groupby(['Class', 'Age', 'City', 'Color']).nunique()

1 个答案:

答案 0 :(得分:1)

您可以使用size

Set_b_B

输出

result = df.groupby(['Class', 'Age', 'City', 'Color']).size().reset_index(name='Count')
print(result)