您如何清洁并向前填充熊猫的多日1分钟时间序列?

2083

我有一个带有1分钟股票数据的CSV文件,该数据跨越了数天。每天从9:30到16:00。

时间序列中的某些分钟丢失了:(此处缺少2013-09-16 09:32:00和2013-09-17 09:31:00)

2013-09-16 09:30:00,461.01,461.49,461,461,183507
2013-09-16 09:31:00,460.82,461.6099,460.39,461.07,212774
2013-09-16 09:33:00,460.0799,460.88,458.97,459.2401,207880
2013-09-16 09:34:00,458.97,460.08,458.8,460.04,148121
...
2013-09-16 15:59:00,449.72,450.0774,449.59,449.95,146399
2013-09-16 16:00:00,450.12,450.12,449.65,449.65,444594
2013-09-17 09:30:00,448,448,447.5,447.96,173624
2013-09-17 09:32:00,450.6177,450.9,449.05,449.2701,268715
2013-09-17 09:33:00,451.39,451.96,450.58,450.7061,197019
...
...

对于大熊猫,我该如何向前填充系列,以便每分钟都在场?我应该看起来像这样:

2013-09-16 09:30:00,461.01,461.49,461,461,183507
2013-09-16 09:31:00,460.82,461.6099,460.39,461.07,212774
2013-09-16 09:32:00,460.82,461.6099,460.39,461.07,212774 <-- forward filled
2013-09-16 09:33:00,460.0799,460.88,458.97,459.2401,207880
2013-09-16 09:34:00,458.97,460.08,458.8,460.04,148121
...
2013-09-16 15:59:00,449.72,450.0774,449.59,449.95,146399
2013-09-16 16:00:00,450.12,450.12,449.65,449.65,444594
2013-09-17 09:30:00,448,448,447.5,447.96,173624
2013-09-17 09:31:00,448,448,447.5,447.96,173624 <-- forward filled
2013-09-17 09:32:00,450.6177,450.9,449.05,449.2701,268715
2013-09-17 09:33:00,451.39,451.96,450.58,450.7061,197019
...

它还需要考虑是否缺少多个连续分钟...

埃德·楚姆

所以我将您的前4行复制到一个数据框中:

Out[49]:
                    0         1         2       3         4       5
0 2013-09-16 09:30:00  461.0100  461.4900  461.00  461.0000  183507
1 2013-09-16 09:31:00  460.8200  461.6099  460.39  461.0700  212774
2 2013-09-16 09:33:00  460.0799  460.8800  458.97  459.2401  207880
3 2013-09-16 09:34:00  458.9700  460.0800  458.80  460.0400  148121

然后

df1 = df.set_index(keys=[0]).resample('1min', fill_method='ffill')
df1

Out[52]:
                            1         2       3         4       5
0                                                                
2013-09-16 09:30:00  461.0100  461.4900  461.00  461.0000  183507
2013-09-16 09:31:00  460.8200  461.6099  460.39  461.0700  212774
2013-09-16 09:32:00  460.8200  461.6099  460.39  461.0700  212774
2013-09-16 09:33:00  460.0799  460.8800  458.97  459.2401  207880
2013-09-16 09:34:00  458.9700  460.0800  458.80  460.0400  148121

这还将处理多个缺失值并向前填充它们。

所以如果我有类似的数据

2013-09-17 09:30:00,448,448,447.5,447.96,173624
2013-09-17 09:33:00,451.39,451.96,450.58,450.7061,197019

并执行与之前相同的操作:

Out[55]:
                          1       2       3         4       5
0                                                            
2013-09-17 09:30:00  448.00  448.00  447.50  447.9600  173624
2013-09-17 09:31:00  448.00  448.00  447.50  447.9600  173624
2013-09-17 09:32:00  448.00  448.00  447.50  447.9600  173624
2013-09-17 09:33:00  451.39  451.96  450.58  450.7061  197019

这里的关键是,你必须有一个datetimeindex,如果你想保持它作为一列,那么你可以只设置drop=Falseset_index

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

熊猫:如何将10分钟间隔的时间序列转换为数据帧?

来自分类Dev

如何基于熊猫时间序列中的5分钟间隔创建组ID?

来自分类Dev

熊猫:时间序列数据:如何选择一个小时,一天或一分钟的行?

来自分类Dev

如何基于熊猫时间序列中的5分钟间隔创建一个组ID?

来自分类Dev

如何将15分钟数据转换为每小时以熊猫为单位的时间?

来自分类Dev

如何以一分钟的准确度绘制来自 BigQuery 的时间序列?

来自分类Dev

在SQL Server中将15分钟的时间序列转换为10分钟的时间序列

来自分类Dev

如何分别在“现在”,“ 1分钟前”,“ 1小时前”显示时间

来自分类Dev

如何从五分钟前的时间减去当前时间?

来自分类Dev

使用熊猫仅保留timedelta = 1分钟的数据

来自分类Dev

R:以不规则的1分钟时间序列计算1小时平均值

来自分类Dev

如果前后1分钟或2分钟,如何舍入到最接近的5分钟间隔?

来自分类Dev

我如何比较大于或等于给定时间戳记的1分钟

来自分类Dev

比赛时间以perl +1分钟计?

来自分类Dev

使用频率为1分钟的Python在时间序列中丢弃具有Nan值的任何一天

来自分类Dev

如何在SQL中将5分钟的时间戳间隔转换为1分钟的间隔,同时保留其他信息?

来自分类Dev

如何将熊猫日期时间滚动到前一个工作日的5分钟

来自分类Dev

如何将时间增加15分钟

来自分类Dev

如何将时间增加15分钟

来自分类Dev

如何增加5小时30分钟的时间?

来自分类Dev

Android屏幕在特定的不同时间间隔(例如1分钟,2分钟)以编程方式锁定

来自分类Dev

将数据从不规则的时间序列添加到具有5分钟时间步长的时间序列

来自分类Dev

将数据从不规则的时间序列添加到具有5分钟时间步长的时间序列

来自分类Dev

1分钟后如何使用javascript刷新Repeater?

来自分类Dev

如何使凌空缓存在1分钟内到期

来自分类Dev

@reboot 1分钟后如何开始Cron作业?

来自分类Dev

单击后如何禁用1分钟的按钮?

来自分类Dev

@reboot 1分钟后如何开始Cron作业?

来自分类Dev

在cakephp中1分钟后如何销毁cookie?

Related 相关文章

  1. 1

    熊猫:如何将10分钟间隔的时间序列转换为数据帧?

  2. 2

    如何基于熊猫时间序列中的5分钟间隔创建组ID?

  3. 3

    熊猫:时间序列数据:如何选择一个小时,一天或一分钟的行?

  4. 4

    如何基于熊猫时间序列中的5分钟间隔创建一个组ID?

  5. 5

    如何将15分钟数据转换为每小时以熊猫为单位的时间?

  6. 6

    如何以一分钟的准确度绘制来自 BigQuery 的时间序列?

  7. 7

    在SQL Server中将15分钟的时间序列转换为10分钟的时间序列

  8. 8

    如何分别在“现在”,“ 1分钟前”,“ 1小时前”显示时间

  9. 9

    如何从五分钟前的时间减去当前时间?

  10. 10

    使用熊猫仅保留timedelta = 1分钟的数据

  11. 11

    R:以不规则的1分钟时间序列计算1小时平均值

  12. 12

    如果前后1分钟或2分钟,如何舍入到最接近的5分钟间隔?

  13. 13

    我如何比较大于或等于给定时间戳记的1分钟

  14. 14

    比赛时间以perl +1分钟计?

  15. 15

    使用频率为1分钟的Python在时间序列中丢弃具有Nan值的任何一天

  16. 16

    如何在SQL中将5分钟的时间戳间隔转换为1分钟的间隔,同时保留其他信息?

  17. 17

    如何将熊猫日期时间滚动到前一个工作日的5分钟

  18. 18

    如何将时间增加15分钟

  19. 19

    如何将时间增加15分钟

  20. 20

    如何增加5小时30分钟的时间?

  21. 21

    Android屏幕在特定的不同时间间隔(例如1分钟,2分钟)以编程方式锁定

  22. 22

    将数据从不规则的时间序列添加到具有5分钟时间步长的时间序列

  23. 23

    将数据从不规则的时间序列添加到具有5分钟时间步长的时间序列

  24. 24

    1分钟后如何使用javascript刷新Repeater?

  25. 25

    如何使凌空缓存在1分钟内到期

  26. 26

    @reboot 1分钟后如何开始Cron作业?

  27. 27

    单击后如何禁用1分钟的按钮?

  28. 28

    @reboot 1分钟后如何开始Cron作业?

  29. 29

    在cakephp中1分钟后如何销毁cookie?

热门标签

归档