Pandas KeyError при слиянии - PullRequest
0 голосов
/ 05 мая 2018

Я новичок в Pandas и пытаюсь сделать левое соединение между двумя фреймами данных. Я получаю KeyError. Может ли кто-нибудь заметить мою ошибку? Я предполагаю, что это, вероятно, что-то простое, что я скучаю. Спасибо!

import pandas as pd
import xlrd


remediation_file = pd.read_excel('C:\\Users\garyd\\Desktop\\remediation-workbook.xlsx')

exception_file = pd.read_excel('C:\\Users\garyd\\Desktop\\exception-finished-file.xlsx')


remediation_file['Concat ID-Resource'] = remediation_file['ID'] + remediation_file['Resource'] 

exception_file['Concat ID-Resource'] = exception_file['ID'] + exception_file['Resource'] 

indexed_remediation_file = remediation_file.set_index(['Concat ID-Resource'])

indexed_exception_file = exception_file.set_index(['Concat ID-Resource'])

# print(indexed_remediation_file)

# print(indexed_exception_file)


join_file = pd.merge(indexed_remediation_file, indexed_exception_file, on = 'Concat ID-Resource', how='left')

# print(join_file)

Ответы [ 2 ]

0 голосов
/ 05 мая 2018

Если вы хотите объединить два кадра данных по индексам , используйте df1.join (df2)

, если вы хотите объединить 3+ DF по индексам, используйте: pd.concat ([df1, df2, df3], axis = 1)

0 голосов
/ 05 мая 2018

Эти строки

indexed_remediation_file = remediation_file.set_index(['Concat ID-Resource'])

indexed_exception_file = exception_file.set_index(['Concat ID-Resource'])

сделать объединенный столбец индексом каждого из фреймов данных. Поэтому, когда вы хотите объединить, вместо использования

on='Concat ID-Resource'

использование

left_index=True,
right_index=True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...