熊猫到日期时间& Cumsum毫秒

时间:2018-05-08 12:17:22

标签: python pandas datetime series cumsum

我有几个问题。

首先,我想在pandas数据帧中使用datetime。

像这样...... 2018/03/06 00:01:27:744

如何更换此日期时间?

然后..第二..

        Time                  Sensor1         Sensor2    TimeCumsum
2018/03/06 00:01:27:744         0               1            
2018/03/06 00:01:27:759         0               1
2018/03/06 00:01:27:806         0               1            0.15
2018/03/06 00:01:27:838         1               1    
2018/03/06 00:01:28:009         1               1            0.2
2018/03/06 00:01:28:056         1               0            ...

当Sensor1为0且Sensor2为1时,我想要Time Seconds cumsum。

我该怎么做?

感谢。

1 个答案:

答案 0 :(得分:1)

我认为需要:

df['Time'] = pd.to_datetime(df['Time'], format='%Y/%m/%d %H:%M:%S:%f')

m = (df['Sensor1'].eq(0) & df['Sensor2'].eq(1))
df['col'] = df.loc[m, 'Time'].dt.microsecond.cumsum() // 10**3
print (df)
                     Time  Sensor1  Sensor2     col
0 2018-03-06 00:01:27.744        0        1   744.0
1 2018-03-06 00:01:27.759        0        1  1503.0
2 2018-03-06 00:01:27.806        0        1  2309.0
3 2018-03-06 00:01:27.838        1        1     NaN
4 2018-03-06 00:01:28.009        1        1     NaN
5 2018-03-06 00:01:28.056        1        0     NaN