微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在数据框中从起始元素中查找小于/大于 0.05 的元素然后将这个新索引作为第一个迭代器

如何解决在数据框中从起始元素中查找小于/大于 0.05 的元素然后将这个新索引作为第一个迭代器

我有一个很重要的问题,实际上很难解释。 我从这样的事情开始: Split the data frame based on consecutive row values differences 我将代码修改为:

    df1 = df1.assign(difference=(diff:=df1['Position'].diff()),Change_position=(gt1:=diff.ne(0)),Manoeuvre_nr=gt1.cumsum())

我的数据框如下,有超过 1200 万行(索引是日期,但这里不相关) Picture of a little part of my dataframe

我必须分析名为“Rounded_position”的列。我需要取起始位置 [0],滑动它的元素并找到第一个元素,其中 df['Rounded_position'][0] > 或 indx_new] > 或

但是,在检查每一行的同时,我需要在新列中给它一个标签,这意味着我需要计算发现更改的所有时间。在我从粘贴的链接中使用的方法中,它完成了部分工作,但它只检查行之间是否存在变化,而不检查满足特定条件的行在哪里。我试图将其更改为 diff.gt(0.05) 但随后它会在每一行之间进行检查,这不是我所需要的。

例如。从我的 df 开始,当我从 position=-2.12 开始并在列中向下滑动时,position=-2.07 的元素将是我的下一个“起始索引”,在那里我将放置标签“1”并继续标记“1”直到我找到下一个满足条件的元素。他们我改变标签

如果有人有任何提示,我将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。