熊猫替换行和列的子集的空值

时间:2018-10-26 13:50:44

标签: python pandas

在熊猫数据框中,如果另一列中的值不是nan,我想将nan值替换为零。 我试图根据以下问题改编答案:pandas replace null values for a subset of columns

但是,nan值不会被替换(请参见下面的代码)。我做错了什么?预先谢谢你。

df.loc[df['Litho'].notnull(),'Mu_alt'].fillna(0, inplace=True)
df.loc[df['Litho'].notnull(),'Mu_alt']
>>>0      NaN
>>>1      NaN
>>>2      NaN
>>>3      NaN
>>>4      NaN
>>>5      NaN
>>>6      NaN
>>>7      NaN

如果我在第一行中将df['Litho'].notnull()替换为:,则nan值将替换为0。

1 个答案:

答案 0 :(得分:1)

为避免chained assignments而分配替换值:

m = df['Litho'].notnull()
df.loc[m,'Mu_alt'] = df.loc[m,'Mu_alt'].fillna(0)