我有一个数据框:
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
此代码是一种好习惯吗?
答案 0 :(得分:3)
更好的解决方案是使用:
df5['b'] = df5.b.fillna(df5.a*100)