应用于时间序列数据的时间增量
Time delta applying to time series data
我需要在 5 分钟的时间范围内提前一小时生成此数据。我申请了
timeAhead = times[-1] + pd.Timedelta(1, unit='hour')
timeAhead
这里的结果是最后一步:
Timestamp('2022-04-26 15:57:00+0000', tz='UTC', freq='300S')
但是,我找不到生成 5 分钟范围的方法。目标结果在“2022-04-26 14:57:00+00:00”之后提前一小时开始,例如:'2022-04-26 15:02:00+00:00', '2022-04-26 15:07:00+00:00','2022-04-26 15:12:00+00:00'............'2022-04-26 15:57:00+00:00'
!
DatetimeIndex(['2022-04-26 11:02:00+00:00', '2022-04-26 11:07:00+00:00',
'2022-04-26 11:12:00+00:00', '2022-04-26 11:17:00+00:00',
'2022-04-26 11:22:00+00:00', '2022-04-26 11:27:00+00:00',
'2022-04-26 11:32:00+00:00', '2022-04-26 11:37:00+00:00',
'2022-04-26 11:42:00+00:00', '2022-04-26 11:47:00+00:00',
'2022-04-26 11:52:00+00:00', '2022-04-26 11:57:00+00:00',
'2022-04-26 12:02:00+00:00', '2022-04-26 12:07:00+00:00',
'2022-04-26 12:12:00+00:00', '2022-04-26 12:17:00+00:00',
'2022-04-26 12:22:00+00:00', '2022-04-26 12:27:00+00:00',
'2022-04-26 12:32:00+00:00', '2022-04-26 12:37:00+00:00',
'2022-04-26 12:42:00+00:00', '2022-04-26 12:47:00+00:00',
'2022-04-26 12:52:00+00:00', '2022-04-26 12:57:00+00:00',
'2022-04-26 13:02:00+00:00', '2022-04-26 13:07:00+00:00',
'2022-04-26 13:12:00+00:00', '2022-04-26 13:17:00+00:00',
'2022-04-26 13:22:00+00:00', '2022-04-26 13:27:00+00:00',
'2022-04-26 13:32:00+00:00', '2022-04-26 13:37:00+00:00',
'2022-04-26 13:42:00+00:00', '2022-04-26 13:47:00+00:00',
'2022-04-26 13:52:00+00:00', '2022-04-26 13:57:00+00:00',
'2022-04-26 14:02:00+00:00', '2022-04-26 14:07:00+00:00',
'2022-04-26 14:12:00+00:00', '2022-04-26 14:17:00+00:00',
'2022-04-26 14:22:00+00:00', '2022-04-26 14:27:00+00:00',
'2022-04-26 14:32:00+00:00', '2022-04-26 14:37:00+00:00',
'2022-04-26 14:42:00+00:00', '2022-04-26 14:47:00+00:00',
'2022-04-26 14:52:00+00:00', '2022-04-26 14:57:00+00:00'],
dtype='datetime64[ns, UTC]', freq='300S')
这将在您提供的日期前 1 小时为您提供另一列。
data = {'Date' : ['2022-04-26 11:02:00+00:00', '2022-04-26 11:07:00+00:00',
'2022-04-26 11:12:00+00:00', '2022-04-26 11:17:00+00:00',
'2022-04-26 11:22:00+00:00', '2022-04-26 11:27:00+00:00',
'2022-04-26 11:32:00+00:00', '2022-04-26 11:37:00+00:00',
'2022-04-26 11:42:00+00:00', '2022-04-26 11:47:00+00:00',
'2022-04-26 11:52:00+00:00', '2022-04-26 11:57:00+00:00',
'2022-04-26 12:02:00+00:00', '2022-04-26 12:07:00+00:00',
'2022-04-26 12:12:00+00:00', '2022-04-26 12:17:00+00:00',
'2022-04-26 12:22:00+00:00', '2022-04-26 12:27:00+00:00',
'2022-04-26 12:32:00+00:00', '2022-04-26 12:37:00+00:00',
'2022-04-26 12:42:00+00:00', '2022-04-26 12:47:00+00:00',
'2022-04-26 12:52:00+00:00', '2022-04-26 12:57:00+00:00',
'2022-04-26 13:02:00+00:00', '2022-04-26 13:07:00+00:00',
'2022-04-26 13:12:00+00:00', '2022-04-26 13:17:00+00:00',
'2022-04-26 13:22:00+00:00', '2022-04-26 13:27:00+00:00',
'2022-04-26 13:32:00+00:00', '2022-04-26 13:37:00+00:00',
'2022-04-26 13:42:00+00:00', '2022-04-26 13:47:00+00:00',
'2022-04-26 13:52:00+00:00', '2022-04-26 13:57:00+00:00',
'2022-04-26 14:02:00+00:00', '2022-04-26 14:07:00+00:00',
'2022-04-26 14:12:00+00:00', '2022-04-26 14:17:00+00:00',
'2022-04-26 14:22:00+00:00', '2022-04-26 14:27:00+00:00',
'2022-04-26 14:32:00+00:00', '2022-04-26 14:37:00+00:00',
'2022-04-26 14:42:00+00:00', '2022-04-26 14:47:00+00:00',
'2022-04-26 14:52:00+00:00', '2022-04-26 14:57:00+00:00']}
df = pd.DataFrame(data)
df['Date'] = pd.to_datetime(df['Date'], infer_datetime_format=True)
df['Fast_Forward_One_Hour'] = df['Date'] + datetime.timedelta(hours = 1)
df
我需要在 5 分钟的时间范围内提前一小时生成此数据。我申请了
timeAhead = times[-1] + pd.Timedelta(1, unit='hour')
timeAhead
这里的结果是最后一步:
Timestamp('2022-04-26 15:57:00+0000', tz='UTC', freq='300S')
但是,我找不到生成 5 分钟范围的方法。目标结果在“2022-04-26 14:57:00+00:00”之后提前一小时开始,例如:'2022-04-26 15:02:00+00:00', '2022-04-26 15:07:00+00:00','2022-04-26 15:12:00+00:00'............'2022-04-26 15:57:00+00:00'
!
DatetimeIndex(['2022-04-26 11:02:00+00:00', '2022-04-26 11:07:00+00:00',
'2022-04-26 11:12:00+00:00', '2022-04-26 11:17:00+00:00',
'2022-04-26 11:22:00+00:00', '2022-04-26 11:27:00+00:00',
'2022-04-26 11:32:00+00:00', '2022-04-26 11:37:00+00:00',
'2022-04-26 11:42:00+00:00', '2022-04-26 11:47:00+00:00',
'2022-04-26 11:52:00+00:00', '2022-04-26 11:57:00+00:00',
'2022-04-26 12:02:00+00:00', '2022-04-26 12:07:00+00:00',
'2022-04-26 12:12:00+00:00', '2022-04-26 12:17:00+00:00',
'2022-04-26 12:22:00+00:00', '2022-04-26 12:27:00+00:00',
'2022-04-26 12:32:00+00:00', '2022-04-26 12:37:00+00:00',
'2022-04-26 12:42:00+00:00', '2022-04-26 12:47:00+00:00',
'2022-04-26 12:52:00+00:00', '2022-04-26 12:57:00+00:00',
'2022-04-26 13:02:00+00:00', '2022-04-26 13:07:00+00:00',
'2022-04-26 13:12:00+00:00', '2022-04-26 13:17:00+00:00',
'2022-04-26 13:22:00+00:00', '2022-04-26 13:27:00+00:00',
'2022-04-26 13:32:00+00:00', '2022-04-26 13:37:00+00:00',
'2022-04-26 13:42:00+00:00', '2022-04-26 13:47:00+00:00',
'2022-04-26 13:52:00+00:00', '2022-04-26 13:57:00+00:00',
'2022-04-26 14:02:00+00:00', '2022-04-26 14:07:00+00:00',
'2022-04-26 14:12:00+00:00', '2022-04-26 14:17:00+00:00',
'2022-04-26 14:22:00+00:00', '2022-04-26 14:27:00+00:00',
'2022-04-26 14:32:00+00:00', '2022-04-26 14:37:00+00:00',
'2022-04-26 14:42:00+00:00', '2022-04-26 14:47:00+00:00',
'2022-04-26 14:52:00+00:00', '2022-04-26 14:57:00+00:00'],
dtype='datetime64[ns, UTC]', freq='300S')
这将在您提供的日期前 1 小时为您提供另一列。
data = {'Date' : ['2022-04-26 11:02:00+00:00', '2022-04-26 11:07:00+00:00',
'2022-04-26 11:12:00+00:00', '2022-04-26 11:17:00+00:00',
'2022-04-26 11:22:00+00:00', '2022-04-26 11:27:00+00:00',
'2022-04-26 11:32:00+00:00', '2022-04-26 11:37:00+00:00',
'2022-04-26 11:42:00+00:00', '2022-04-26 11:47:00+00:00',
'2022-04-26 11:52:00+00:00', '2022-04-26 11:57:00+00:00',
'2022-04-26 12:02:00+00:00', '2022-04-26 12:07:00+00:00',
'2022-04-26 12:12:00+00:00', '2022-04-26 12:17:00+00:00',
'2022-04-26 12:22:00+00:00', '2022-04-26 12:27:00+00:00',
'2022-04-26 12:32:00+00:00', '2022-04-26 12:37:00+00:00',
'2022-04-26 12:42:00+00:00', '2022-04-26 12:47:00+00:00',
'2022-04-26 12:52:00+00:00', '2022-04-26 12:57:00+00:00',
'2022-04-26 13:02:00+00:00', '2022-04-26 13:07:00+00:00',
'2022-04-26 13:12:00+00:00', '2022-04-26 13:17:00+00:00',
'2022-04-26 13:22:00+00:00', '2022-04-26 13:27:00+00:00',
'2022-04-26 13:32:00+00:00', '2022-04-26 13:37:00+00:00',
'2022-04-26 13:42:00+00:00', '2022-04-26 13:47:00+00:00',
'2022-04-26 13:52:00+00:00', '2022-04-26 13:57:00+00:00',
'2022-04-26 14:02:00+00:00', '2022-04-26 14:07:00+00:00',
'2022-04-26 14:12:00+00:00', '2022-04-26 14:17:00+00:00',
'2022-04-26 14:22:00+00:00', '2022-04-26 14:27:00+00:00',
'2022-04-26 14:32:00+00:00', '2022-04-26 14:37:00+00:00',
'2022-04-26 14:42:00+00:00', '2022-04-26 14:47:00+00:00',
'2022-04-26 14:52:00+00:00', '2022-04-26 14:57:00+00:00']}
df = pd.DataFrame(data)
df['Date'] = pd.to_datetime(df['Date'], infer_datetime_format=True)
df['Fast_Forward_One_Hour'] = df['Date'] + datetime.timedelta(hours = 1)
df