我有一個熊貓數據框df
,我想要查找列A
的值相同的所有行,但列B
的值不同如:熊貓在一列中搜索具有不同值的另一列中的重複行
| A | B
---|---|---
0 | 2 | x
1 | 2 | y
我知道我可以使用pd.concat(g for _, g in df.groupby('A') if len(g) > 1)
與A
重複值獲得的行,但我怎麼添加第二個約束?
我有一個熊貓數據框df
,我想要查找列A
的值相同的所有行,但列B
的值不同如:熊貓在一列中搜索具有不同值的另一列中的重複行
| A | B
---|---|---
0 | 2 | x
1 | 2 | y
我知道我可以使用pd.concat(g for _, g in df.groupby('A') if len(g) > 1)
與A
重複值獲得的行,但我怎麼添加第二個約束?
想到這裏,是有意義的調用unique
在groupby
:
In [213]:
df = pd.DataFrame({'A':2, 'B':list('xxyzz')})
df
Out[213]:
A B
0 2 x
1 2 x
2 2 y
3 2 z
4 2 z
In [229]:
df.groupby('A')['B'].apply(lambda x: x.unique()).reset_index()
Out[229]:
A B
0 2 [x, y, z]
你可以張貼作爲結果所需的輸出可以在很多方面 – EdChum