我有两个数据帧,我正在尝试合并关键'时间'。第一个数据框(事件)有一组事件,其时间如下(在日期上编制索引):
Time Event Importance Actual Forecast Previous
Date
2014-04-04 07:30 EUR German Markit Construction PMI Medium NaN NaN 53.6
2014-04-04 08:10 EUR German Markit Retail PMI Medium NaN NaN 52.1
2014-04-04 08:10 EUR Euro-Zone Markit Retail PMI Medium NaN NaN NaN
2014-04-04 10:00 EUR German Factory Orders n.s.a. (YoY) Medium NaN 6.8% 8.4%
2014-04-04 12:30 CAD Net Change in Employment High NaN 22.5K -7.0K
,第二个(df1)包含一个具有相同时间格式的计数列表(按时间索引 - 最多23:59):
Time count
00:00 00:00 64
00:01 00:01 25
00:02 00:02 19
00:03 00:03 15
00:04 00:04 20
.
.
07:30 07:30 26
.
.
08:10 08:10 35
我正在寻找的是
Time Event count
07:30 EUR German Markit Construction PMI 26
08:10 EUR German Markit Retail PMI 35
08:10 EUR Euro-Zone Markit Retail PMI 35
我正在尝试合并这两个表以使用下面的pandas合并函数获取事件表旁边的计数但是它抛出了一个不可修改的实例错误 - 有人可以建议吗?
df1.reset_index(inplace=True)
events.reset_index(inplace=True)
dfMerged = pd.merge(events, df1,
left_on=['Time', 'Event'],
right_on=['Time', 'count'],
how='inner')
dfMerged.set_index('date', inplace=True)
TypeError: unhashable instance
或者即使我这样做:
dfMerged = pd.merge(events, df1,
on='Time',
how='inner')