因此,假设我们有一个这样的表(时间,距离,速度,距离变化,以米和秒为单位):
t d v delta_d
0 0 1.0 0.5 NaN
1 1 1.5 0.1 0.5
2 2 1.6 0.1 0.1
3 3 1.7 0.0 0.1
4 4 1.7 0.1 0.0
5 5 1.8 0.1 0.1
6 6 1.9 0.6 0.1
7 7 2.5 0.7 0.6
8 8 3.2 0.7 0.7
如何删除未更改总delta_d的行?
即如果要遍历行,如何在n米的线段之间放置点? 本质上是基于距离进行“重采样”,但没有插值?
比方说,我只希望至少每隔0.15米读取一次,但我不想只丢点小于0.15m ...
我可以使用for循环和一个计数器来执行此操作,然后除非我未达到阈值就将其丢弃,但是有熊猫可以做到吗?
编辑:我的预期输出将是这样的:
t d v delta_d
0 0 1.0 0.5 NaN
1 1 1.5 0.1 0.5
3 3 1.7 0.0 0.1
6 6 1.9 0.6 0.1
7 7 2.5 0.7 0.6
答案 0 :(得分:1)
希望我能正确理解您的问题, 要找出每行不同的值,可以使用pandas.DataFrame.diff
df = pd.DataFrame({'a': [1, 2, 4, 6, 5, 10]})
df['diff']=df.diff()
它将给您类似
之后,您可以根据自己的号码过滤出差异
df[df['diff']>=1]