【问题标题】:Pandas Combine date and time columnsPandas 结合日期和时间列
【发布时间】:2017-05-20 07:07:31
【问题描述】:

在制作一个日期时间列时遇到问题。我的 df 有一个以日期为元组的“日期”列和一个时间戳列。如下图:

df.head(2)
     date       time
0    (2016,5,7) 01:01:01.125
1    (2016,5,8) 02:03:05.691  

对于日期在元组中这一事实,pandas 中是否有一种快速方法可以将这两列合并为一个日期时间列处理?

谢谢

【问题讨论】:

    标签: pandas datetime


    【解决方案1】:

    从元组构造一个数据框以传递给pd.to_datetime
    使用pd.to_timedelta'time' 列转换为时间增量

    date = pd.to_datetime(
        pd.DataFrame(
            df.date.tolist(),
            columns=['year', 'month', 'day']
        )
    )
    
    time = pd.to_timedelta(df.time)
    
    date + time
    
    0   2016-05-07 01:01:01.125
    1   2016-05-08 02:03:05.691
    dtype: datetime64[ns]
    

    【讨论】:

      猜你喜欢
      • 2023-02-07
      • 2020-10-12
      • 2017-05-16
      • 2021-10-22
      • 2013-08-01
      • 1970-01-01
      相关资源
      最近更新 更多