Examples
import numpy as np
import pandas as pd
df1 = pd.DataFrame({'X': [None, 0], 'Y': [None, 5]})
df2 = pd.DataFrame({'X': [3, 3], 'Y': [4, 4]})
df1.combine_first(df2)
Null values still persist if the location of that null value does not exist in other
df1 = pd.DataFrame({'X': [None, 0], 'Y': [5, None]})
df2 = pd.DataFrame({'Y': [4, 4], 'C': [2, 2]}, index=[1, 2])
df1.combine_first(df2)