对于 A 列中的每个值,B 列中应该只有一个值 - Pandas

There should be one and only one value in column B for every value in column A - Pandas

我有一个数据框,如图所示:

我想要类似于 Value 列的输出。
这意味着对于列 A 中的每个值,在列 B 中只能有一个值。
即使 A 列中的值重复,B 列中的值也应重复。
请帮忙

使用 transform 将每个 'A' 值遇到的第一个 'B' 值设置到每一行,然后测试第一个值是否等于 'B' 值。

df['V'] = df['B'] == df.groupby('A')['B'].transform('first')

输出:

>>> df
   A  B      V
0  1  a   True
1  1  a   True
2  2  a   True
3  3  b   True
4  1  a   True
5  2  b  False
6  3  c  False
7  1  d  False

详情:

>>> df.groupby('A')['B'].transform('first')
0    a
1    a
2    a
3    b
4    a
5    a
6    b
7    a
Name: B, dtype: object