xxxxxxxxxx
# based on another column value
df['column_1'].fillna(df['column_2'], inplace=True)
xxxxxxxxxx
# selecting your desired columns
df[['a', 'b']] = df[['a', 'b']].fillna(df['c'], inplace=True)
xxxxxxxxxx
# make sure to import numpy as np
df.fillna(np.nan).replace([np.nan], [None])
xxxxxxxxxx
When inplace = True , the data is modified in place, which means it will return nothing and the dataframe is now updated. When inplace = False , which is the default, then the operation is performed and it returns a copy of the object. You then need to save it to something.