在数据集第一个条目之前开始对熊猫重新采样

时间:2018-11-26 12:04:03

标签: python python-3.x pandas resampling

亲爱的经验丰富的社区, 我找不到解决我问题的优雅方法。 我有一个数据集的子样本,我想每周进行一次重新抽样,但是要在我的数据框中第一个条目输入之前的几周开始(所以数计数为0的几周)

数据样本:

在:

print(df_pec.head())

出局:

    Count Image_Sequence_DateTime
18      1     2015-11-06 03:22:19
21      1     2015-11-11 01:48:51
22      1     2015-11-11 07:30:47
37      1     2015-11-25 09:42:23
48      1     2015-12-05 12:12:34

最早的图像序列位于:

在:

df_pec.Image_Sequence_DateTime.min()

出局:

2015-09-30 15:16:38

我还有另一个功能,可以给我该实验中测量的第一周的起点和最后一周的终点:

在:

print(s_startend)

出局:

Start   2015-09-28
End     2017-12-25
dtype: datetime64[ns]

我的问题是我想每周对df_pec进行重新采样,但要从实验部署的第一周第一天的第一秒开始。(以s_startend为参考)

我尝试:

df_pec=df_pec.resample('1W', on='Image_Sequence_DateTime').sum() 
print(df_pec.head(),'\n',df_pec.tail())

出局:

                         Count
Image_Sequence_DateTime       
2015-10-04                26.0
2015-10-11                92.0
2015-10-18               204.0
2015-10-25               193.0
2015-11-01               187.0 
                          Count
Image_Sequence_DateTime       
2017-11-19                20.0
2017-11-26                34.0
2017-12-03                16.0
2017-12-10                11.0
2017-12-17                 3.0

这很奇怪,因为它甚至跳过了df_pec中的数据的第一天。(从2015-09-30 15:16:38开始)

即使它起作用了,即使子样本df_pec的最早和最近几周都没有记录,我也无法以指定的值(在本例中为s_startend)来指示重新采样。

我考虑过人为地在df_pec中添加两个具有真实开始和真实结尾的条目,但是我认为它并不那么优雅,我不想在df中添加无意义的键。

非常感谢您的智慧!

0 个答案:

没有答案