我有一个数据帧,其中包含一个包含日期的列(例如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
发布于 2020-07-04 13:53:38
首先,我没有看到Quand Hoang的答案,如果你感兴趣的话:
df.apply(lambda row: pd.to_datetime(" ".join(row[["date", "time"]])), axis=1)
https://stackoverflow.com/questions/62729458
复制相似问题