У меня есть два фрейма данных df1 и df2 , каждый с одинаковыми именами столбцов с использованием временных меток в качестве индикаторов. Я хочу объединить два фрейма данных при объединении строк с одним и тем же индексом, выбрав значения, хранящиеся в df2 в качестве предпочтения. Это плохо сформулировано, но см. Ниже. Например,
>>> df1= TimeStamp A_Output B_Output C_Output
00:00:00 20 15 5
00:00:06 20 NaN 3
00:00:15 15 6 NaN
00:00:20 20 NaN 5
00:00:30 25 14 10
>>> df2= TimeStamp A_Output B_Output C_Output
00:00:00 15 5 8
00:00:04 16 NaN NaN
00:00:06 17 NaN NaN
00:00:15 NaN NaN 2
00:00:18 19 NaN NaN
00:00:21 14 NaN NaN
00:00:26 32 NaN 5
>>> df3= TimeStamp A_Output B_Output C_Output
00:00:00 15 5 8
00:00:04 16 NaN NaN
00:00:06 17 NaN 3
00:00:15 15 6 2
00:00:18 19 NaN NaN
00:00:21 14 NaN NaN
00:00:26 32 NaN 5
00:00:30 25 14 10
df3 - это то, чего я хотел бы достичь. Здесь есть временная метка для каждого индекса в df1 и df2 . Для каждого общего индекса, где db2 не является NaN, мы берем значения, в противном случае мы сохраняем те, которые хранятся в df1 .
df1 >>> 00:00:15 15 6 NaN
df2 >>> 00:00:15 NaN NaN 2
df3 >>> 00:00:15 15 6 2
df1 >>> 00:00:00 20 15 5
df2 >>> 00:00:00 15 5 8
df3 >>> 00:00:00 15 5 8
Для пояснения см. Приведенные выше примеры. Я действительно не могу найти способ сделать это - для справки, каждый фрейм данных имеет около 90 столбцов и более 100 тыс. Строк.