Dividir um vetor por suas seqüências [duplicado]
Esta pergunta já tem uma resposta aqui:
Como particionar um vetor em grupos de sequências regulares e consecutivas? 5 respostasO seguinte vetorx
contém as duas sequências1:4
e6:7
, entre outros dígitos não sequenciais.
x <- c(7, 1:4, 6:7, 9)
Eu gostaria de dividirx
por suas seqüências, para que o resultado seja uma lista como a seguinte.
# [[1]]
# [1] 7
#
# [[2]]
# [1] 1 2 3 4
#
# [[3]]
# [1] 6 7
#
# [[4]]
# [1] 9
Existe uma maneira rápida e simples de fazer isso?
eu tentei
split(x, c(0, diff(x)))
que se aproxima, mas não tenho vontade de acrescentar0
para o vetor diferenciado é o caminho certo a seguir. UsandofindInterval
também não funcionou.