找到矢量减少的位置

find positions where vector decreases

x<-c(2 ,1, 3 ,1, 3, 4)

这里的向量在两处减少。这只是一个示例向量。在第二个位置和第 4 个位置,矢量减少(从 2 到 1 和从 3 到 1)。我要找这些职位

您可以通过简单地将向量与自身进行移位比较来检查:

x < c(0,x[-length(x)])
[1] FALSE  TRUE FALSE  TRUE FALSE FALSE

x 移动一个值(引入 0 并忽略 xlength(x) 的最后一个值)。

要查找哪些位置正在减少,您可以在该逻辑向量上使用 which

which(x < c(0,x[-length(x)]))
[1] 2 4