因果重采样:最后X <time_unit>的总和

Ame*_*ina 4 python pandas

说我有以下值:

                                   money_spent
time                 
2014-10-06 17:59:40.016000-04:00      1.832128
2014-10-06 17:59:41.771000-04:00      2.671048
2014-10-06 17:59:43.001000-04:00      2.019434
2014-10-06 17:59:44.792000-04:00      1.294051
2014-10-06 17:59:48.741000-04:00      0.867856
Run Code Online (Sandbox Code Playgroud)

我希望能衡量每秒钟花费的金钱2。更具体地说,对于输出中的每个时间戳,我需要查看最近2秒钟内花费的资金。

当我做:

df.resample('2S', how='last')
Run Code Online (Sandbox Code Playgroud)

我得到:

                                money_spent
time               
2014-10-06 17:59:40-04:00          2.671048
2014-10-06 17:59:42-04:00          2.019434
2014-10-06 17:59:44-04:00          1.294051
2014-10-06 17:59:46-04:00               NaN
2014-10-06 17:59:48-04:00          0.867856
Run Code Online (Sandbox Code Playgroud)

不是我所期望的。首先,请注意,再采样DF的第一项是2.671048,但那是在时间17:59:40,即使按照原来的数据帧,没钱花了还没有。那怎么可能?

Nas*_*ibi 5

尝试使用how=np.sum

df.resample('2S', how=np.sum, closed='left', label='right')
Run Code Online (Sandbox Code Playgroud)

编辑

至于closedlabel

它的意思是:从左封闭的间隔开始,并用间隔右端的日期标记。(为2秒,例如[1、1.2、1.5、1.9、2))。并且从文档

已关闭:{'right','left'}关闭bin间隔的哪一侧

label:{'right','left'}标签桶使用哪个料箱边缘标签