xxxxxxxxxx
# make sure to import numpy as np
df.fillna(np.nan).replace([np.nan], [None])
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
values = {"A": 0, "B": 1, "C": 2, "D": 3}
>>> df.fillna(value=values)
A B C D
0 0.0 2.0 2.0 0.0
1 3.0 4.0 2.0 1.0
2 0.0 1.0 2.0 3.0
3 0.0 3.0 2.0 4.0