У меня есть два кадра данных неравного размера, у них обоих есть два столбца «CUSIP» и «Counterparty», которые я пытаюсь сопоставить. Я хочу взять только два значения столбца из одного кадра данных, поэтому, когда я делаю это
df = df.merge(gs[['Dirty Price','Factor']], how = 'left', on = ['CUSIP', 'Counterparty'])
, я получаю эту ошибку:
df = df.merge(gs[['Dirty Price','Factor']], how = 'left', on = ['CUSIP', 'Counterparty'])
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py", line 6868, in merge
copy=copy, indicator=indicator, validate=validate)
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\reshape\merge.py", line 47, in merge
validate=validate)
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\reshape\merge.py", line 529, in __init__
self.join_names) = self._get_merge_keys()
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\reshape\merge.py", line 833, in _get_merge_keys
right._get_label_or_level_values(rk))
File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\generic.py", line 1706, in _get_label_or_level_values
raise KeyError(key)
KeyError: 'CUSIP'
Я не уверен, почему это происходит. Любые идеи, пожалуйста, поделитесь.