Это соответствует вашему примеру?
df = pd.DataFrame([[1, 3, np.nan], [np.nan, 4, 2]])
dg = pd.concat([row.dropna().reset_index(drop = True).to_frame().T
for idx, row in df.iterrows()
],
axis = 0,
)
или
dh = df.apply(lambda row : row.dropna().reset_index(drop = True), axis = 1)