почему значения панд NaN иногда печатаются как numpy.float64, а иногда плавают?Это так сбивает с толку, когда я хочу использовать функцию и изменять значения в кадре данных в зависимости от других столбцов
пример:
A B C
0 1 NaN d
1 2 a s
2 2 b s
3 3 c NaN
У меня есть def для изменения значения столбца C
def change_val(df):
if df.A==1 and df.B==np.nan:
return df.C
else:
return df.B
Затем я применяю эту функцию к столбцу C
df['C']=df.apply(lambda x: change_val(x),axis=1)
Что-то не так на df.B==np.nan
, как мне правильно выразить это, пожалуйста?
Желаемый результат:
A B C
0 1 NaN d
1 2 a a
2 2 b b
3 3 c c