我正在合并两个数据框:
df = pd.merge(source, extracted, left_on = 'SESSION_SCHED', right_on = 'COMPL_DATE')
请注意,SESSION_SCHED
是一个日期,但没有时间戳。 COMPL_DATE
在合并之前有一个时间戳,但在合并之后没有。
例子:
>>> print(extracted['COMPL_DATE'])
0 2015-11-25 10:25:00
5 2016-09-30 13:31:00
10 2013-09-13 00:00:00
15 2014-12-18 17:00:00
>>> print(df['COMPL_DATE'])
0 2015-13-22
1 2013-01-30
2 2013-09-13
3 2011-10-18
4 2013-09-13
如何合并数据帧,同时将时间戳保留在 COMPL_DATE
列中?
请您参考如下方法:
extracted.assign(x=extracted['COMPL_DATE'].dt.normalize()
- 将添加一个带有截断时间的新列 x
(即 00:00:00
) - 我们可以使用此列加入:
df = pd.merge(source, extracted.assign(x=extracted['COMPL_DATE'].dt.normalize()),
left_on = 'SESSION_SCHED', right_on = 'x')