重新采样大熊猫时间序列与指数之间的时间间隔的问题

时间:2016-10-09 09:59:00

标签: python pandas

我想重拍熊猫系列

import pandas as pd
index_1 = pd.date_range('1/1/2000', periods=4, freq='T')
index_2 = pd.date_range('1/2/2000', periods=3, freq='T')
series = pd.Series(range(4), index=index_1)
series=series.append(pd.Series(range(3), index=index_2))
print series
>>>2000-01-01 00:00:00    0
   2000-01-01 00:01:00    1
   2000-01-01 00:02:00    2
   2000-01-01 00:03:00    3
   2000-01-02 00:00:00    0
   2000-01-02 00:01:00    1
   2000-01-02 00:02:00    2

这样得到的DataSeries只包含每一个第二个条目,即

  >>>2000-01-01 00:00:00    0
     2000-01-01 00:02:00    2
     2000-01-02 00:00:00    0
     2000-01-02 00:02:00    2

以下列方式使用(记录不完整的)pandas重采样方法:

resampled_series = series.resample('2T', closed='right')
print resampled_series

我得到了

>>>1999-12-31 23:58:00    0.0
   2000-01-01 00:00:00    1.5
   2000-01-01 00:02:00    3.0
   2000-01-01 00:04:00    NaN
   2000-01-01 00:56:00    NaN
                  ...
   2000-01-01 23:54:00    NaN
   2000-01-01 23:56:00    NaN
   2000-01-01 23:58:00    0.0
   2000-01-02 00:00:00    1.5
   2000-01-02 00:02:00    3.0

为什么它比原始系列提前2分钟开始?为什么它包含中间的所有时间步骤,这些步骤未包含在原始系列中?我怎样才能得到我想要的结果?

1 个答案:

答案 0 :(得分:1)

resample()不适合您的目的。

试试这个:

series[series.index.minute % 2 == 0]