Home > Net >  Pandas replace NaN values with respect to the columns
Pandas replace NaN values with respect to the columns

Time:01-12

I have the following data frame.

df = pd.DataFrame({'A': [2, np.nan], 'B': [1, np.nan]})

df.fillna(0) replaces all the NaN values with 0. But I want to replace the NaN values in the column 'A' with 1 and in the column 'B' with 0, simultaneously. How can I do that ?

CodePudding user response:

Use:

df["A"].fillna(1 , inplace=True) # for col A - NaN -> 1
df["B"].fillna(0 , inplace=True) # for col B - NaN -> 0

CodePudding user response:

This does it in one line

(df['column_name'].fillna(0,inplace=True),df['column_name'].fillna(1,inplace=True))
print(df)

CodePudding user response:

fillna method also exists for Series objects.

df["A"] = df["A"].fillna(1)
df["B"] = df["B"].fillna(0)
  •  Tags:  
  • Related