这是另一个问题的后续问题:Causal resampling: Sum over the last X <time_unit>
说我有以下时间序列:
money_spent
timestamp
2014-10-06 18:00:40.063000-04:00 0.568000
2014-10-06 18:00:41.361000-04:00 3.014770
2014-10-06 18:00:42.896000-04:00 0.878154
2014-10-06 18:00:43.040000-04:00 0.723077
2014-10-06 18:00:44.791000-04:00 0.723077
2014-10-06 18:00:45.496000-04:00 0.309539
2014-10-06 18:00:45.799000-04:00 3.032000
2014-10-06 18:00:47.470000-04:00 3.014770
2014-10-06 18:00:48.092000-04:00 1.584616
我想抽样:
2.5
秒的时间戳范围“例如,假设我生成一组预定义的时间戳,如下所示:
# Start at 18:00
start_time = datetime.datetime(year = 2014,
month = 10,
day = 6,
hour = 18,
tzinfo = pytz.timezone('US/Eastern')
# Finish 400 seconds later
end_time = start_time + datetime.timedelta(seconds=400)
my_new_timestamps = pd.date_range(start = start_time,
end = end_time,
freq = '2.5s')
我希望通过获取my_new_timestamps
的总和,在money_spent
定义的位置的帖子顶部重新采样原始数据框。
请注意,原始数据框仅涵盖〜 18:00:40 ,直到〜 18:00:48 ,所以如果我这样做:
resample('2.5S', how='sum', label='right')
上面的命令将仅在这两次之间的时间窗口上返回样本,并且在my_new_timestamps
定义的开始和结束时间之间不。它还会在2.5s
区间内采样不同与我想要的区间(由my_new_timestamps
定义的区间)。