2016-10-26 2 views
0

가 나는 다음과 같은 형태 벡터의 많은이 :이 벡터의 모든에서행에 중복 값이있는 벡터를 찾는 방법은 무엇입니까?

a <- c(0,0,0,1,1) 
b <- c(1,0,0,0,1) 
c <- c(0,0,1,1,1) 

은 연속 3 회 반복하고있는 값이 있습니다.

어떻게 든이 반복을 식별해야합니다. 주된 조건은 반복되는 하나의 값입니다.

Duplicated()는 적어도 기본에서는 도움이되지 않습니다.

이러한 벡터의 정의는이를 제거하기 위해 필요합니다.

내 작업에 적합한 벡터.

d <- c(1,0,1,0,0) 

부적절한 벡터입니다.

e <- c(1,1,1,0,0) 
+1

예상 출력이 무엇인지 명확히 할 수 있습니까? –

답변

0

당신은 기본 패키지 또는 data.table에서 rleid 함수의 rle를 살펴 할 수 있습니다.

rle(c(0,0,0,1,1)) 
Run Length Encoding 
lengths: int [1:2] 3 2 
values : num [1:2] 0 1 

library(data.table) 
rleid(c(0,0,0,1,1)) 
[1] 1 1 1 2 2 

둘 모두 동일한 번호의 런을 조사합니다. rle 함수는 길이와 값의 목록을 반환하고 rleid 함수는 계열의 수가 바뀔 때마다 계산되는 벡터를 반환합니다.

+0

감사합니다! 이 방법은 rle과 함께 작동합니다. – Funrab

관련 문제