我有一个数据框,其中包含带有日期的列(例如01.01.2006
)和带有时间的列(例如16:00
)。我正在尝试2个小时,将2合并到一个单独的列datetime
中。 datetime
的格式应为任何表示日期和时间的格式,例如16:00-01.01.2006
。数据框的最小版本如下所示:
array([['01.01.2006', '01:00', 121.82],
['01.01.2006', '02:00', 120.78],
['01.01.2006', '03:00', 112.51],
['01.01.2006', '04:00', 100.63],
['01.01.2006', '05:00', 66.11]], dtype=object)
我最近尝试了很多选择:
df['datetime'] = df['date'] + ' ' + df['time']
df['datetime'] = pd.to_datetime(df[['datetime']], format='%d.%m.%Y %H:%M')
第二行出现错误:
ValueError: to assemble mappings requires at least that [year, month, day] be specified: [day,month,year] is missing
1。)上面我在做什么错了?
2。)是否有较短的方法将2列立即转换为所需的datetime
? Tnx
答案 0 :(得分:1)
首先,如果您感兴趣,我没有看到Quand Hoang的答案:
df.apply(lambda row: pd.to_datetime(" ".join(row[["date", "time"]])), axis=1)