gpt4 book ai didi

r - 基于增加/减少趋势的子集向量

转载 作者:行者123 更新时间:2023-12-02 00:54:29 24 4
gpt4 key购买 nike

我在 R 中有一个向量定义为 c(2,3,4,6,5,3,1,3,5,6)

我想根据向量中的所有增加/减少趋势对向量进行子集化。

期望的输出应该是 3 个子向量(在这个例子中)

1) (2,3,4,6)
2) (6,5,3,1)
3) (1,3,5,6)

最佳答案

x = c(2, 3, 4, 6, 5, 3, 1, 3, 5, 6)
r = cumsum(rle(sign(diff(x)) >= 0)$lengths) + 1
lapply(seq_along(r), function(i){
x[max(1, r[i - 1]):r[i]]
})
#[[1]]
#[1] 2 3 4 6

#[[2]]
#[1] 6 5 3 1

#[[3]]
#[1] 1 3 5 6

关于r - 基于增加/减少趋势的子集向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55443706/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com