Check if column value is in other columns in pandas

后端 未结 5 1737
终归单人心
终归单人心 2020-12-17 18:01

I have the following dataframe in pandas

  target   A       B      C
0 cat      bridge  cat    brush  
1 brush    dog     cat    shoe
2 bridge   cat     shoe         


        
5条回答
  •  一向
    一向 (楼主)
    2020-12-17 18:21

    OneHotEncoder approach:

    In [165]: x = pd.get_dummies(df.drop('target',1), prefix='', prefix_sep='')
    
    In [166]: x
    Out[166]:
       bridge  cat  dog  cat  shoe  bridge  brush  shoe
    0       1    0    0    1     0       0      1     0
    1       0    0    1    1     0       0      0     1
    2       0    1    0    0     1       1      0     0
    
    In [167]: x[df['target']].eq(1).any(1)
    Out[167]:
    0    True
    1    True
    2    True
    dtype: bool
    

    Explanation:

    In [168]: x[df['target']]
    Out[168]:
       cat  cat  brush  bridge  bridge
    0    0    1      1       1       0
    1    0    1      0       0       0
    2    1    0      0       0       1
    

提交回复
热议问题