擅长:python、mysql、java
<p>我们还可以使用布尔掩码和内置聚合函数(以提高执行速度)而不是自定义lambda函数(未优化且速度较慢),如下所示:</p>
<pre><code>mask = df.groupby("Product")["Inv_Type"].transform('nunique') > 1
df1 = df[mask]
df2 = df[~mask]
</code></pre>
<p>结果:</p>
<pre><code>print(df1)
Product Inv_Type Quant
12 Prod3 X 15
13 Prod3 Y 19
14 Prod3 Y 16
15 Prod3 X 12
16 Prod3 Y 9
17 Prod3 X 8
18 Prod3 X 8
19 Prod3 Y 7
print(df2)
Product Inv_Type Quant
0 Prod1 X 17
1 Prod1 X 12
2 Prod1 X 9
3 Prod1 X 9
4 Prod2 Y 2
5 Prod2 Y 16
6 Prod2 Y 16
7 Prod2 Y 9
8 Prod2 Y 17
9 Prod2 Y 12
10 Prod2 Y 12
11 Prod2 Y 13
20 Prod5 X 2
21 Prod5 X 19
22 Prod5 X 16
23 Prod5 X 18
</code></pre>