【发布时间】:2020-08-21 03:45:44
【问题描述】:
我有一个带有日期时间列的数据框 df。总数据框有 2000 万行,为方便起见,我只取 3 行。
df = pd.DataFrame({})
df['Date'] = pd.to_datetime(np.arange(0,3), unit='h', origin='2018-08-01 00:00:00')
Date
0 2018-08-01 00:00:00
1 2018-08-01 01:00:00
2 2018-08-01 02:00:00
从日期时间开始,我想创建新列“00_hrs”、“01_hrs”、“02_hrs”(等到“23_hrs”),其中值是 0 或 1。当给定日期时间的小时是适用于列中给出的小时数,否则为 0。
结果应如下所示:
Date 00_hrs 01_hrs 02_hrs ... 23_hrs
0 2018-08-01 00:00:00 1 0 0 0
1 2018-08-01 01:00:00 0 1 0 0
2 2018-08-01 02:00:00 0 0 1 0
【问题讨论】:
标签: pandas datetime python-datetime