df1 = pd.DataFrame(np.random.randn(8, 3), columns=['A', 'B', 'C'], index=name)
df2 = pd.DataFrame(np.random.randn(8, 1), columns=['D'], index=name)
df3 = pd.DataFrame(np.random.randn(8, 2), columns=['E', 'F'], index=name)
df = df1.join(df2)
df = df.join(df3)
df1['Name'] = df1.index
df1 = df1.set_index('Name')
gf1 = pd.DataFrame(np.random.randn(8, 3), columns=['A', 'B', 'C'], index=
    list(range(8)))
gf2 = pd.DataFrame(np.random.randn(8, 1), columns=['D'], index=list(range(2, 10)))
gf3 = pd.DataFrame(np.random.randn(8, 2), columns=['E', 'F'], index=list(range(4,
    12)))
gf = gf1.join(gf2, how='outer')
gf = gf.join(gf3, how='outer')
панды, объединяющие несколько фреймов данных в столбцах