我在数据框中有以下数据结构:
Date Hour
01/01/2016 1
01/01/2016 2
01/01/2016 3
01/01/2016 4
... ...
01/01/2016 13
01/01/2016 14
... ...
数据为2年每小时数据。我设法将日期转换为日期时间格式,但小时是单独解析的,并且位于单独的列中。如何将小时转换为日期时间对象并将它们添加到日期中,以便获得正确的日期时间结构:
Date Hour DateTime
01/01/2016 1 01/01/2016 01:00:00
01/01/2016 2 01/01/2016 02:00:00
01/01/2016 3 01/01/2016 03:00:00
01/01/2016 4 01/01/2016 04:00:00
... ... ...
01/01/2016 13 01/01/2016 13:00:00
01/01/2016 14 01/01/2016 14:00:00
... ... ...
最佳答案
给定
>>> df
Date Hour
0 01/01/2016 1
1 01/01/2016 2
2 01/01/2016 3
3 01/01/2016 4
我会发布
>>> df['Date'] = pd.to_datetime(df['Date']) # pick dayfirst=True or False in your code
>>> df
Date Hour
0 2016-01-01 1
1 2016-01-01 2
2 2016-01-01 3
3 2016-01-01 4
然后通过时间增量的向量化加法构造'DateTime'
列:
>>> df['DateTime'] = df['Date'] + pd.to_timedelta(df['Hour'], 'h')
>>> df
Date Hour DateTime
0 2016-01-01 1 2016-01-01 01:00:00
1 2016-01-01 2 2016-01-01 02:00:00
2 2016-01-01 3 2016-01-01 03:00:00
3 2016-01-01 4 2016-01-01 04:00:00
关于python 将每小时数据 [1-24] 添加到日期时间数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53759154/