Это, вероятно, довольно простой c вопрос. Предположим, у меня есть два фрейма данных:
>>> df1
id a
0 0 5.0
1 1 10.0
2 2 15.0
3 3 NaN
4 4 NaN
5 5 NaN
>>> df2
id a
0 0 NaN
1 1 NaN
2 2 NaN
3 3 20.0
4 4 25.0
5 5 30.0
Я хочу присоединиться к фреймам данных на id
, чтобы они выглядели так:
>>> df_joined
id a
0 0 5.0
1 1 10.0
2 2 15.0
3 3 20.0
4 4 25.0
5 5 30.0
До сих пор я выполнял левые слияния, например df1.merge(df2, how = 'left', on = 'id)
, но это приводит к дублированию столбцов (см. Ниже), которые я должен исправить, заполнив nans, переименовав столбцы, а затем отбросив дубликат. Это становится особенно утомительным, если мне нужно объединить более двух фреймов данных.
# How do I better merge this so I don't have fill nans, rename, and drop the columns?
id a_x a_y
0 0 5.0 NaN
1 1 10.0 NaN
2 2 15.0 NaN
3 3 NaN 20.0
4 4 NaN 25.0
5 5 NaN 30.0
Какой лучший способ сделать это?