如果同一列中的两个值匹配,return 来自另一列的同一行中的两个值

If two values in the same column match, return two values in same row from another column

如何匹配数据框同一列中的值和return同一行另一列中的两个 ID 的列表?

我正在尝试编写一个代码来匹配同一列中的两个值,其中包含字符串,returns 两个值(整数)位于另一列但相同的行中作为匹配字符串。

       cid                    ownerPPNO              
810023112           'ca7e0fc4b7f73b7692c762675e3da960'  
810023112           'c1af5c8bc5247770d53ae9c61e739f8c'  
810033622           '41463f37b4136b8348a8a628e139f619'  
810033622           '3f1869c28e007c8d70ed2bfbc45a56cb'  
810034882           '457508b0c6dcbee9fc9359ac761209f9'  
810037342           'df9dbdd15915be7370aa58facb4b1605'  
810037342           'd402e6c7a87ad2c028aa17811fd244ca'  
810044292           'c6a5f4bfd2d6e95af4a85b65e11f7652'  
810044292           'bf0fdeae633a93e3b33317acb9c45433'  
810044292           'a9b34461d4b1aac1e127ba9af32dac88'  
810059672           '2bc378d9093368104e2a74baf2eadfe1'      

我想比较 ownerPPNO 和 return ID。 ownerPPNO 可能出现两次以上

如果您想查看 'ownerPPNO' 出现两次或更多次。试试这个:

df.loc[df.groupby('ownerPPNO')['cid'].transform('count') > 1, ['ownerPPNO']].drop_duplicates()

如果您想查看哪个 'cid' 出现在重复 'ownerPPNO' 上。试试这个:

df.loc[df.groupby('ownerPPNO')['cid'].transform('count') > 1, :]