我有一个具有两列的数据帧(df3
):SUBSCRIBE
和Weeks3Meals
。
Subscribe
是分类变量,可以采用值(Y
,N
),并且Weeks3Meals
的类型为float
。两者都包含缺失值(NaN
)。
原始数据框:
我想用Y
替换,如果相应的NA
单元格不是Subscribe
,则在Weeks3Meals
中所有具有NA
的单元格。
例如,我想用NA
替换行SUBSCRIBE
中3
的Y
值,因为Weeks3Meals
单元格不是NA
而是具有值;见下图:
这是我试图做的事情:
df3['SUBSCRIBE'][df3['Weeks3Meals'].notnull()].fillna('Y', inplace = True).
但是当我打印出数据框时,NA
值不会被替换,并且行保持不变:
我不确定为什么它不起作用。多谢您的协助。谢谢。
您可以尝试这个吗?
df3.loc[(df3['Weeks3Meals'].notnull()) & (df3['SUBSCRIBE'].isnull()), 'SUBSCRIBE'] ='Y'