我需要一些帮助写R
我需要检查数据帧中的指定列是否正确排列了升序。
例如
df$id | df$order | df$any
3 1 a
4 2 a
7 3 b
1 4 b
2 6 a
9 5 a # select this row - out of sequence in df$order
8 7 a
我想选择不遵循升序的行。在上面的示例中,该行将是df$id
等于9
的行,因为在df$order
中,值5
在值6
之后。 / p>
糟糕。 1:在df$order
中,数字的范围是1到N,其中N是大于1的数字。
观察2:如果可能的话,我想使用核心库来解决问题。
任何问题,只问评论
预先感谢!
答案 0 :(得分:2)
使用基本R:
subset(df,c(0,diff(order))<0)
id order any
6 9 5 a
subset(df,c(0,diff(order))>=0)
id order any
1 3 1 a
2 4 2 a
3 7 3 b
4 1 4 b
5 2 6 a
7 8 7 a