我正在合并两个数据帧:
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
列中的时间戳的同时合并数据框?
答案 0 :(得分:1)
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')
答案 1 :(得分:0)
经过审核,合并后时间戳未显示的真正原因是合并中选择的唯一行的时间戳为00:00:00。因此,假定此时间并且未明确显示。