R是否有可能在符合指定条件的行之后提取NEXT行(选择行+ 1)?比如我在数据如何在满足特定标准的行后选择所有来到下一个行的行?
df1[df1$criterion == "example", ]
选择特定的行,但我没有兴趣在这些行,但随后那些满足要标准的每一个第一排......
R是否有可能在符合指定条件的行之后提取NEXT行(选择行+ 1)?比如我在数据如何在满足特定标准的行后选择所有来到下一个行的行?
df1[df1$criterion == "example", ]
选择特定的行,但我没有兴趣在这些行,但随后那些满足要标准的每一个第一排......
你可以这样做:
indices <- which(df1$criterion == "example")[- nrow(df1)] + 1
df1[indices, ]
基本上,你用它来把你的TRUE
/FALSE
掩码转换成索引。部分[- nrow(df)]
通过删除它(无论它的值)来处理掩码的最后一个元素是TRUE
的情况。
另一个基本的解决方案:
df1$cummeet <- cumsum(df1$criterion == "example")
df1[df1$cummeet > 0]
通过使用累计总和,您可以在特定行后看到的所有行。
也许'df1 [which(df1 $ criterion ==“example”)+ 1,]'? –
看看'?哪个' – Sotos
非常有帮助,谢谢 –