如何计算1到下一个0之间的天数

香草巧克力441

[我附上了我的系列的图片和获取系列的代码,我如何获取1和下一个0之间的天数。例如,前1和后0之间的天数是4天(8月1日至8月5日),接下来的1和0之间的天数也是4天[8月8日至1月8

values = [1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1]
      
dates =['2019-08-01', '2019-08-02', '2019-08-05', '2019-08-06',
           '2019-08-07', '2019-08-08', '2019-08-09', '2019-08-12',
           '2019-08-13', '2019-08-14', '2019-08-15', '2019-08-16',
           '2019-08-19', '2019-08-20', '2019-08-21', '2019-08-22',
           '2019-08-23', '2019-08-26', '2019-08-27', '2019-08-28',
           '2019-08-29', '2019-08-30']

pd.Series(values, index = dates)
笨狼

我认为像下面这样的东西应该起作用,首先有一个带有日期索引的系列:

ds = pd.Series(values, index = pd.to_datetime(dates))

然后,您可以计算连续值之间的差:

delta = ds - ds.shift(fill_value=ds[0]-1)

看起来像这样:

pd.DataFrame({'value':ds,'delta':delta})


    value   delta
2019-08-01  1   1
2019-08-02  1   0
2019-08-05  0   -1
2019-08-06  0   0
2019-08-07  0   0
2019-08-08  1   1
2019-08-09  1   0
2019-08-12  0   -1
2019-08-13  1   1
2019-08-14  0   -1

因此,您需要的开始日期是delta为1时,下一个零是-1处。

starts = ds.index[delta == 1]
ends = ds.index[delta == -1]
(ends - starts[:len(ends)]).days

Int64Index([4, 4, 1, 7], dtype='int64')

请注意,在某些情况下,数据帧的末尾有1,但它们不会翻转为0,因此我将其忽略。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何计算1到下一个0之间的天数

来自分类Dev

在Ruby中,如何计算直到下一个星期日的天数?

来自分类Dev

一个订单和下一个订单> 1个订单之间的MySQL天数

来自分类Dev

如何使启动画面导航到下一个画面之前等待计算?

来自分类Dev

计算直到下一个指定日期为止的天数

来自分类Dev

计算直到下一个指定日期为止的天数

来自分类Dev

从一个数组到下一个以numpy获取到下一个日期的天数

来自分类Dev

如何舍入到下一个整数?

来自分类Dev

如何舍入到下一个偶数?

来自分类Dev

如何将函数修复到允许下一个函数正确计算的位置?

来自分类Dev

如何使用猫鼬聚合函数计算从当前日期到另一个日期之间的天数

来自分类Dev

如何计算下一个/上一个 ISO 工作日数?

来自分类Dev

计算下一个递减值之间的差异

来自分类Dev

多个文件的less命令:如何导航到下一个/上一个

来自分类Dev

如何计算一个时期的天数?

来自分类Dev

如何计算一列中某些值从1个值到下一个值的变化,而另一列中有一些公共值呢?

来自分类Dev

SASS 可以计算一个值和下一个整数之间的差吗?

来自分类Dev

在 mysql 中根据 id 到下一个或上一个值计算行的 over() 子句错误

来自分类Dev

上一个和下一个按钮之间的文本框,以导航到表格中

来自分类Dev

如何计算订阅计划的下一个续订日期?

来自分类Dev

蛇游戏-如何计算下一个苹果位置

来自分类Dev

pyephem:如何计算进入下一个星座的时间

来自分类Dev

如何使用Joda Time Libaray计算下一个生日

来自分类Dev

给定生日,如何计算下一个生日?

来自分类Dev

如何使用Joda Time Libaray计算下一个生日

来自分类Dev

机器ε,ε:从1到下一个较小值的步长是多少?

来自分类Dev

如何匹配字符串和下一个空格之间的所有内容

来自分类Dev

如何在当前日期和下一个日期之间进行datediff?

来自分类Dev

如何匹配字符串和下一个空格之间的所有内容

Related 相关文章

  1. 1

    如何计算1到下一个0之间的天数

  2. 2

    在Ruby中,如何计算直到下一个星期日的天数?

  3. 3

    一个订单和下一个订单> 1个订单之间的MySQL天数

  4. 4

    如何使启动画面导航到下一个画面之前等待计算?

  5. 5

    计算直到下一个指定日期为止的天数

  6. 6

    计算直到下一个指定日期为止的天数

  7. 7

    从一个数组到下一个以numpy获取到下一个日期的天数

  8. 8

    如何舍入到下一个整数?

  9. 9

    如何舍入到下一个偶数?

  10. 10

    如何将函数修复到允许下一个函数正确计算的位置?

  11. 11

    如何使用猫鼬聚合函数计算从当前日期到另一个日期之间的天数

  12. 12

    如何计算下一个/上一个 ISO 工作日数?

  13. 13

    计算下一个递减值之间的差异

  14. 14

    多个文件的less命令:如何导航到下一个/上一个

  15. 15

    如何计算一个时期的天数?

  16. 16

    如何计算一列中某些值从1个值到下一个值的变化,而另一列中有一些公共值呢?

  17. 17

    SASS 可以计算一个值和下一个整数之间的差吗?

  18. 18

    在 mysql 中根据 id 到下一个或上一个值计算行的 over() 子句错误

  19. 19

    上一个和下一个按钮之间的文本框,以导航到表格中

  20. 20

    如何计算订阅计划的下一个续订日期?

  21. 21

    蛇游戏-如何计算下一个苹果位置

  22. 22

    pyephem:如何计算进入下一个星座的时间

  23. 23

    如何使用Joda Time Libaray计算下一个生日

  24. 24

    给定生日,如何计算下一个生日?

  25. 25

    如何使用Joda Time Libaray计算下一个生日

  26. 26

    机器ε,ε:从1到下一个较小值的步长是多少?

  27. 27

    如何匹配字符串和下一个空格之间的所有内容

  28. 28

    如何在当前日期和下一个日期之间进行datediff?

  29. 29

    如何匹配字符串和下一个空格之间的所有内容

热门标签

归档