首页 > 解决方案 > Python Pandas:将 2 个字段日期 + 时间转换为 1 个日期时间字段

问题描述

在 Pandas 数据框中,有 2 列:

"CREATED ON DATE" (dtype: datetime64[ns]) e.g. 2019-06-16
"CREATED AT TIME" (dtype: object) e.g. 19:46:14

由于类型不匹配,简单地添加该字段是行不通的。

df["CREATED DATETIME"] = df["CREATED ON DATE"] + df["CREATED AT TIME"]

如何将这 2 列组合为 1 个日期时间字段“创建日期时间”?

标签: pythonpandasdatetime

解决方案


使用to_timedelta

df["CREATED DATETIME"] = df["CREATED ON DATE"] + pd.to_timedelta(df["CREATED AT TIME"])

如果对象在列中出现 python 次,则将其转换为strings 之前:

df["CREATED DATETIME"] = (df["CREATED ON DATE"] + 
                          pd.to_timedelta(df["CREATED AT TIME"].astype(str)))

推荐阅读