替换DataFrame中的NaN值

时间:2020-07-23 14:15:37

标签: pandas

我有一个数据框:

 df5=pd.DataFrame( {'a':[1,2,3,4],
                    'b':[5,np.nan,np.nan,8] },
                     index=pd.date_range('7-23-2020', periods=4, name='date'))

            a    b  
date                
2020-07-23  1   5.0 
2020-07-24  2   NaN 
2020-07-25  3   NaN 
2020-07-26  4   8.0 

我想在“ b”列中选择np.nan值,并在“ a”中替换为相应的值。 这是我的代码:

df5.loc[df5['B'].isna(),'B']=df5.loc[df5['B'].isna(),'A']*100

此代码是一种好习惯吗?

1 个答案:

答案 0 :(得分:3)

更好的解决方案是使用:

df5['b'] = df5.b.fillna(df5.a*100)