Есть ли способ объединить два pandas кадра данных так, чтобы те же имена столбцов заканчивались как записи списка в объединенном df?
Например:
import pandas as pd
df_1 = pd.DataFrame({'A' : [1,2,3], 'B' : [4,5,6], 'C' : [7,8,9]})
df_2 = pd.DataFrame({'A' : [1,2,3], 'B' : ['a','b','c'], 'C' : ['d','e','f']})
df_merged = df_1.merge(df_2, on='A') # This should be changed, I guess
приводит к:
A B_x C_x B_y C_y
0 1 4 7 a d
1 2 5 8 b e
2 3 6 9 c f
Я надеялся на:
A B C
0 1 [4, a] [7, d]
1 2 [5, b] [8, e]
2 3 [6, c] [9, f]
Так что это похоже на функцию groupby.apply(list)
, но для слияния фреймов данных.