#python #pandas #dataframe #join #merge
#python #pandas #фрейм данных #Присоединиться #слияние
Вопрос:
У меня есть два фрейма данных с несколькими одинаковыми заголовками столбцов в каждом.
Я хочу объединить оба фрейма данных, но использовать данные из фрейма данных B только в том случае, если нет доступных данных — это фрейм данных A, т. Е. Фрейм данных B — это значения по умолчанию, которые следует использовать, если нет данных — это фрейм данных A.
Фрейм данных A
A B C
01/01/2020 78 45 78
02/01/2020 41 36 51
03/01/2020 81 43 51
04/01/2020 84 NaN NaN
05/01/2020 NaN NaN NaN
.
.
.
.
31/01/2022 NaN NaN NaN
Фрейм данных B;
A B C
01/01/2020 40 30 60
02/01/2020 40 30 60
03/01/2020 40 30 60
04/01/2020 40 30 60
.
.
.
.
31/01/2025 40 30 60
Пример 04/01/2020 будет гласить;
04/01/2020 84 30 60
Любая форма объединения / слияния, которую я делаю, кажется, неправильно перезаписывает значения.
Любая помощь очень ценится!
Ответ №1:
Предполагать df1
A B C
date
01/01/2020 78.0 45.0 78.0
02/01/2020 41.0 36.0 51.0
03/01/2020 81.0 43.0 51.0
04/01/2020 84.0 NaN NaN
05/01/2020 NaN NaN NaN
и df2
A B C
date
01/01/2020 40 30 60
02/01/2020 40 30 60
03/01/2020 40 30 60
04/01/2020 40 30 60
05/01/2020 40 30 60
Оба имеют date
в качестве индекса
df3 = df1.fillna(df2)
A B C
date
01/01/2020 78.0 45.0 78.0
02/01/2020 41.0 36.0 51.0
03/01/2020 81.0 43.0 51.0
04/01/2020 84.0 30.0 60.0
05/01/2020 40.0 30.0 60.0