【发布时间】:2019-06-21 01:56:48
【问题描述】:
我正在处理 csv 时间序列数据,它显示了每个时间范围内的步数。一旦步数超过 65535,它将从 0 开始计数,等等。但是,由于并非所有数据集都有 65535 计数(有些从 65530 开始,然后是 5,如果他们在时间范围内做了几个步骤),我不能找到一个处理它的好方法,这样 6553x 之后的每个 0 都会变成 65536.. 等等。
step realstep
65531 65531
65533 65533
65534 65534
2 65538
4 65540
我正在尝试计算真正的步数以获得它们的差异(例如步数/分钟)。
【问题讨论】:
-
我从样本数据中假设实际步长中的典型增量安全地远小于最大计数器值,因此
.diff().lt(0)是找到重置的可靠方法。如果情况不一定如此,请告诉我,因为它变得更加棘手。 -
非常感谢!
-
@ALollz 不确定我是否必须提出新问题,但是当我通过数百个数据集时,我意识到一些“步骤”值就像你的例子一样 (65534 - 2 - 4 - 65434),虽然它实际上不是(可能是来自传感器的噪音),因此它被重置太多。我正在想办法现在如何删除这种行。
标签: python pandas dataframe conditional