使用重复条件在Python中过滤行

时间:2018-04-25 15:38:16

标签: python python-3.x pandas dataframe

我有一张桌子:

     A       B     C     D     E     T
    ----    ----  ---   ---   ---   --- 
0    2      3      5     10    21    5
1    4      7      6      8    30   11

我希望能够从任何A-E列中删除没有至少一个匹配值的行,并使用该行记录的列T中的值。 因此,例如,在第0行中,列C中的值5与列T中的5匹配,因此我们保留该行。在第1行中,列T中的值11与列A-E中的任何值都不匹配,因此我们删除该记录。最好的方法是什么?

1 个答案:

答案 0 :(得分:5)

更新:在轴= 1的情况下使用eq(==)和sum,如果大于1则应该是某些列重复列T的值

df[df.eq(df['T'],0).sum(1).gt(1)]
Out[84]: 
   A  B  C   D   E  T
0  2  3  5  10  21  5