微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

删除 Pandas 中特定数据帧的时间序列数据中的滞后/差距

如何解决删除 Pandas 中特定数据帧的时间序列数据中的滞后/差距

我正在尝试根据订单簿在特定时间范围内更新的次数对特定股票的分布进行建模。

我遇到的问题与数据工程和熊猫有关。因为我只处理交易时间和交易日,所以我的数据集有多个缺口,因此数据看起来不连续。下图清楚地表明:

enter image description here

您可以看到,较大的缺口是周末,较小的缺口是交易后时段。 小的黑色方块(如果放大)看起来像这样:

enter image description here

数据框看起来像这样:

    arrivalTime           value           date
    0 days 09:30:02.231     1          2021-05-03
    0 days 09:30:02.981     3          2021-05-03
    0 days 09:30:02.999     99         2021-05-03
    0 days 09:30:10.284     11         2021-05-03
    0 days 09:30:10.293     92         2021-05-03
... ... ...
    0 days 15:59:42.654     82         2021-05-28
    0 days 15:59:42.655     19         2021-05-28
    0 days 15:59:42.651     122        2021-05-28
    0 days 15:59:42.941     199        2021-05-28
    0 days 15:59:44.721     19         2021-05-28

我需要的确切信息是,一旦交易日结束,第二天正好在当天结束后继续。如果有任何问题,请告诉我

谢谢!

解决方法

IIUC,您想将日期转换为连续日期:

示例:

>>> df
         date
0  2021-05-05
1  2021-05-05
2  2021-05-05
3  2021-05-06
4  2021-05-06
5  2021-05-06
6  2021-05-07
7  2021-05-07
8  2021-05-07
9  2021-05-10  # <- 2021-05-08
10 2021-05-10  # <- 2021-05-08
11 2021-05-10  # <- 2021-05-08
12 2021-05-11  # <- 2021-05-09
13 2021-05-11  # <- 2021-05-09
14 2021-05-11  # <- 2021-05-09
>>> df['date'].min() + df['date'].diff().ne(pd.Timedelta(0)).cumsum().sub(1) \
                                 .apply(pd.tseries.offsets.Day)
0    2021-05-05
1    2021-05-05
2    2021-05-05
3    2021-05-06
4    2021-05-06
5    2021-05-06
6    2021-05-07
7    2021-05-07
8    2021-05-07
9    2021-05-08
10   2021-05-08
11   2021-05-08
12   2021-05-09
13   2021-05-09
14   2021-05-09
Name: date,dtype: datetime64[ns]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。