基于符号(+;/-)拆分R中的向量
我想根据向量的符号拆分向量。我有一个向量,看起来像:基于符号(+;/-)拆分R中的向量,r,R,我想根据向量的符号拆分向量。我有一个向量,看起来像: v <- c(1, 2,-4,-8 ,-9, 4) v您可以使用sign选择符号,然后使用diff查看这些符号的变化 c(1,which(diff(sign(v))!=0)+1) [1] 1 3 6 @James解决方案的另一种选择是使用sequence和rle: which(sequence(rle(sign(v))$lengths) == 1) # [1] 1 3 6
v <- c(1, 2,-4,-8 ,-9, 4)
v您可以使用sign
选择符号,然后使用diff
查看这些符号的变化
c(1,which(diff(sign(v))!=0)+1)
[1] 1 3 6
@James解决方案的另一种选择是使用sequence
和rle
:
which(sequence(rle(sign(v))$lengths) == 1)
# [1] 1 3 6