df = df.replace({'None': np.nan})
df.index = [df.index, df.Name.notnull().cumsum() - 1]
df = df.stack().reset_index(name='val')
df = df.pivot(index='Name', columns='level_2', values='val')
print(df)
Merge multiple rows into 1 row