使用python pandas合并日期和时间列

发布于 2021-01-29 17:16:48

我有一个带有以下各栏的熊猫数据框;

Date              Time
01-06-2013      23:00:00
02-06-2013      01:00:00
02-06-2013      21:00:00
02-06-2013      22:00:00
02-06-2013      23:00:00
03-06-2013      01:00:00
03-06-2013      21:00:00
03-06-2013      22:00:00
03-06-2013      23:00:00
04-06-2013      01:00:00

如何合并data [‘Date’]和data [‘Time’]以获得以下信息?有办法做到pd.to_datetime吗?

Date
01-06-2013 23:00:00
02-06-2013 01:00:00
02-06-2013 21:00:00
02-06-2013 22:00:00
02-06-2013 23:00:00
03-06-2013 01:00:00
03-06-2013 21:00:00
03-06-2013 22:00:00
03-06-2013 23:00:00
04-06-2013 01:00:00
关注者
0
被浏览
156
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    值得一提的是,你可能已经能够在阅读这 直接
    ,如果你正在使用如read_csv使用parse_dates=[['Date', 'Time']]

    假设这些只是字符串,您可以简单地将它们添加在一起(带有空格),从而可以应用to_datetime

    In [11]: df['Date'] + ' ' + df['Time']
    Out[11]:
    0    01-06-2013 23:00:00
    1    02-06-2013 01:00:00
    2    02-06-2013 21:00:00
    3    02-06-2013 22:00:00
    4    02-06-2013 23:00:00
    5    03-06-2013 01:00:00
    6    03-06-2013 21:00:00
    7    03-06-2013 22:00:00
    8    03-06-2013 23:00:00
    9    04-06-2013 01:00:00
    dtype: object
    
    In [12]: pd.to_datetime(df['Date'] + ' ' + df['Time'])
    Out[12]:
    0   2013-01-06 23:00:00
    1   2013-02-06 01:00:00
    2   2013-02-06 21:00:00
    3   2013-02-06 22:00:00
    4   2013-02-06 23:00:00
    5   2013-03-06 01:00:00
    6   2013-03-06 21:00:00
    7   2013-03-06 22:00:00
    8   2013-03-06 23:00:00
    9   2013-04-06 01:00:00
    dtype: datetime64[ns]
    

    注意:令人惊讶的(对我而言),这在将NaN转换为NaT时可以很好地工作,但值得担心的是转换(也许使用raise参数)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看