lundi 3 décembre 2018

pandas replace values condition based on another column

I have a dataframe that looks like this:

col1 col2
Yes  23123
No   23423423
Yes  34234
No   13213

I want to replace values in col2 so that if 'Yes' in col1 then return blank and if 'No' return the initial value

I want to see this:

 col1 col2
 Yes  
 No   23423423
 Yes  
 No   13213

I have tried this but 'No' is returning None:

   def map_value(x): 
      if x in ['Yes']:
         return ''
      else:
         return None

   df['col2'] = df['col1'].apply(map_value)

Aucun commentaire:

Enregistrer un commentaire