Невозможно присоединиться к датафрейму в пандах - PullRequest
0 голосов
/ 04 октября 2019

У меня есть два ДФ. Первый df является мультииндексом, а другой типичным единичным индексом.

enter image description here

Рисунок 1: Мультииндекс df

и

enter image description here

Рисунок 2: Одиночная индексация

При объединении этих двух df я получил следующую ошибку

не может соединиться без перекрывающихся имен индексов

Я подозреваю, эта ошибка из-за столбца индекса name в первом df (рисунок 1).

Четный,Замена имени индекса и типичного числового значения также не помогает

enter image description here

Рисунок 2: Multiindex df

Можно узнать, как обратитьсяэта ошибка?

Заранее спасибо за потраченное время

1 Ответ

1 голос
/ 04 октября 2019

Вы можете преобразовать первый уровень в MultiIndex в столбец до merge:

df = (df1.reset_index(level=0)
         .merge(df2, left_index=True, right_index=True)
         .set_index('name', append=True)
         .swaplevel(1, 0))

Или, если используете объединение:

df = df1.reset_index(level=0).join(df2).set_index('name', append=True).swaplevel(1, 0)
...