【发布时间】:2022-01-01 06:19:41
【问题描述】:
这个问题可能已经在任何地方得到了回答,但我是 R 的新手,在寻找解决方案几个小时后我没有找到任何东西,所以对于一个可能多余的问题,我很抱歉。
我有一个由 3 列和 10.000 多行组成的数据框。列是时间、速度和加速度。我想要做的是只选择速度等于 3、3.2 或 3.4 或 3.6 的那些行......直到这个特定数据帧中存在的速度最大值(想象最大值为 10.3。因此,我要过滤的最后一个值是 10.2)。但是,这个最大值在未来这样的数据帧中会有所不同(这是来自具有特定最大速度的足球运动员的数据)。
我的数据框称为“ASdata”,我想创建另一个名为“ASdata_only”的数据框,其中只有速度为 == 3、3.2、3.4... 的行,直到最大值(增加 0.2)。
这是我尝试过的:
ASdata_only<-ASdata %>% filter(speed==3 | speed==3.2 | speed==3.4)
但它带来了两个问题:
(1) 这非常耗时,因为这样我就必须包括每个速度,而且肯定有更简单的方法来做到这一点。
(2) 对于每个数据帧,我必须事先找到最大值才能知道何时停止。
我什至不知道这个问题的结构是否合理:对此我也很抱歉。 非常感谢您的帮助!
【问题讨论】: