从Pandas Dataframe中找到列中的唯一值,然后查看这些值在另一列中是否具有相同的值

时间:2018-09-10 02:02:20

标签: python pandas dataframe

我想从一个列中获取所有唯一值,并查看每个唯一值在另一列中是否具有相同的值。下面我有一个数据框,我正在第一列{2,3,4}中寻找唯一值。我试图查看这些值在最后一列中的相同位置是否具有唯一值。

通过查看,很明显第一列中的3值在最后一列中的相应位置仅具有相同的值(4)。因此(3, 4)个匹配项。如何在(3, 4)中实现Pandas的配对?第1列中的唯一值只能在第4列中具有唯一值!

2  2  1  4
2  3  4  4
3  4  3  4
3  5  8  4
2  6  9  2
4  1  6  2
4  4  1  4 
2  4  5  2

1 个答案:

答案 0 :(得分:1)

由于列1的匹配项2和4与列4匹配,因此我不退出此问题。感谢Igor的评论。

df.groupby('c1').c4.unique().loc[lambda x : x.str.len()==1].str[0]
Out[116]: 
c1
3    4
Name: c4, dtype: int64