我正在与python和pandas一起工作。
我在dataFrame中有一些以这种格式的时间段数据:
timeStampStart Measurement
0 2019-02-26 22:47:39.914 810
1 2019-02-26 22:47:40.747 854
2 2019-02-26 22:47:40.743 862
我还有其他几个数据集。基本上,我进行了一个随着时间的推移收集结果的实验,收集timeStampStart
和一个值。
现在,我想抵消所有数据,以使第一个结果从0000-00-00 00 00:00:00开始,而随后的结果仅是差异 - 时间戳从时间0。
重新启动。 timeStampStart Measurement
0 0000-00-00 00:00:00.000 810
1 0000-00-00 00:00:00.834 854
2 0000-00-00 00:00:00.830 862
注意:时间戳类型是pandas._libs.tslib.Timestamp
。
我该如何实现?
您需要按timeStampStart
列的第一个值来减去timedeltas,因为 00:00:00
的数据不存在:
df['td'] = df['timeStampStart'].sub(df['timeStampStart'].iat[0])
print (df)
timeStampStart Measurement td
0 2019-02-26 22:47:39.914 810 00:00:00
1 2019-02-26 22:47:40.747 854 00:00:00.833000
2 2019-02-26 22:47:40.743 862 00:00:00.829000
print (df.dtypes)
timeStampStart datetime64[ns]
Measurement int64
td timedelta64[ns]
dtype: object