How to use pandas apply function on all columns of some rows of data frame

后端 未结 2 1088
暗喜
暗喜 2021-01-23 04:58

I have a dataframe. I want to replace values of all columns of some rows to a default value. Is there a way to do this via pandas apply function

<
2条回答
  •  不思量自难忘°
    2021-01-23 05:44

    Use isin to create a boolean mask and use loc to set the rows that meet the condition to the desired new value:

    In [37]:
    temp.loc[temp['c'].isin(mylist),['a','b']] = 0
    temp
    
    Out[37]:
       a  b  c
    0  0  0  p
    1  2  3  q
    2  3  4  r
    3  4  5  s
    4  0  0  t
    5  6  7  u
    

    result of the inner isin:

    In [38]:
    temp['c'].isin(mylist)
    
    Out[38]:
    0     True
    1    False
    2    False
    3    False
    4     True
    5    False
    Name: c, dtype: bool
    

提交回复
热议问题