多条件过滤器 python pandas

Multi condition filter python pandas

我有一个 pandas 数据框,其中包含这样的数据...

df0

Customer Product Price
A x
B y
B y
C x
C y
D x
D y
D y

我需要将这个数据集分成两个数据框:

客户只有一种产品的一个数据框。客户有多个这样的产品的另一个数据框...

df1

Customer Product Price
A x
B y
B y

df2

Customer Product Price
C x
C y
D x
D y
D y

然后我将对价格进行一些分析作为后续步骤。 我知道如何在一列上进行过滤,但我无法找出需要像这样使用两列的过滤器。 有人可以帮忙编写将数据分成两个数据帧的代码吗? 非常感谢

如果你使用

df0.Product.groupby(df0.Customer).transform('nunique')

将return行中客户的唯一产品数。所以

df0[df0.Product.groupby(df0.Customer).transform('nunique') > 1]

例如,将创建一个包含所有具有多个产品的数据框。