我尝试向我们提供了熊猫合并功能,但收到了一条键盘错误消息。密钥具有相同的类型和名称,这可能是问题所在: 我的代码在这里:
print(data_EURUSD.head())
print(data_XAUUSD.head())
print(data_EURUSD.index)
print(data_XAUUSD.index)
data=pd.merge(data_EURUSD, data_XAUUSD, on='date', how='left')
print(data)
结果:
askclose
date
2017-05-19 21:00:00 1.12090
2017-05-21 21:00:00 1.11999
2017-05-22 21:00:00 1.12402
2017-05-23 21:00:00 1.11840
2017-05-24 21:00:00 1.12195
askclose
date
2017-01-20 22:00:00 1209.47
2017-01-23 22:00:00 1218.46
2017-01-24 22:00:00 1209.41
2017-01-25 22:00:00 1201.18
2017-01-26 22:00:00 1189.04
DatetimeIndex(['2017-05-19 21:00:00', '2017-05-21 21:00:00',
'2018-12-26 22:00:00', '2018-12-27 22:00:00'],
dtype='datetime64[ns]', name='date', length=500, freq=None)
DatetimeIndex(['2017-01-20 22:00:00', '2017-01-23 22:00:00',
'2018-12-26 22:00:00', '2018-12-27 22:00:00'],
dtype='datetime64[ns]', name='date', length=500, freq=None)
....
KeyError: 'date'
答案 0 :(得分:1)
此错误是因为您有一个日期时间json_decode
,“ date”不是一个index
,而是一个column
值。
您应该这样做:
index
在这些情况下,我更喜欢使用pd.merge(data_EURUSD, data_XAUUSD, how='left',right_index=True,left_index=True)
,它已经基于共享索引寻求加入。代码为:
pd.df.join()