这是this question问题的后续问题。我打开了另一个问题,因为另一个问题是3个月大并且回答了。
出于这个df
sensor A B C D E F
date
2011-11-02 19:22:32 0 0 0 0 1 0
2011-11-02 19:29:18 0 0 1 0 0 0
2011-11-02 19:29:30 0 0 1 0 0 0
2011-11-02 19:29:34 0 0 1 0 0 0
2011-11-02 19:29:35 0 0 0 0 0 0
2011-11-02 19:30:06 0 0 0 0 0 0
2011-11-02 19:30:10 0 0 0 0 0 0
2011-11-02 19:30:46 0 0 0 0 1 0
2011-11-02 19:31:25 0 0 1 0 1 0
2011-11-02 19:31:26 0 0 1 0 0 0
2011-11-02 19:31:31 0 0 1 1 0 0
2011-11-02 19:31:41 0 0 0 1 0 0
我想构建一个df,其中包含其中一个传感器(A,B,C)处于活动状态的每个周期的开始和结束日期(即值== 1)。
与另一个问题相比,当传感器的值返回0时,传感器不会处于非活动状态。它会一直处于活动状态,直到另一个传感器值在自身切换为0后切换为1。
所以在上面的例子中,C从19:29:18到19:30:46处于活动状态(当D变为活动状态时)。
结果应如下所示:
df start end sensor
0 2011-11-02 19:29:18 2011-11-02 19:30:46 C
1 2011-11-02 19:31:25 2011-11-02 19:31:31 C
....
我可以通过数据本身的循环,或通过answer of the old question获得的字典上的循环来完成此操作,但我想知道是否有更好/更快的解决方案与pandas。