【发布时间】:2018-06-23 00:44:07
【问题描述】:
我正在处理一组数据。数据格式如下:
SEQ STEP
<dbl> <dbl>
1 x 4.00
2 x 0
3 x 0
4 x 4.00
5 x 0
6 x 0
我使用以下代码按 SEQ 对数据进行分组,因为大约有 50000 个 SEQ ID:
steps%>%
group_by(SEQ)
我现在想过滤掉 PAXSTEP 下的零“0”,如果它们按顺序出现超过 60 次,即如果第 5-100 行有零并且第 101 行在 PAXSTEP 下有一个 > 0 我想过滤第 5-100 行。
steps%>%
group_by(SEQ)%>%
【问题讨论】:
-
使用
lag,您只是检查一个值,n=60行备份在您的小标题中。如果您想检查 60 个值的完整序列不变,您需要做更多的事情。一种策略是在PAXSTEP上使用诸如累积总和之类的东西,然后您确实可以检查 60 行以下的单个值是否保持不变(假设您在 PAXSTEP 中没有负值)。