2014-01-08 48 views
1

我有一個向量可以包含有限數目的值的整數。考慮值爲0,1,2的情況。R - 刪除向量中的重複值到下一個值

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

我想刪除值的重複值,直到下一個不同的值。這樣做後的結果表明是

0 1 0 2 

因此,我想這樣做是唯一的(這將給予0,1,2),但我想採取訂貨考慮。

感謝

回答

2

嘗試(假設沒有NA S):

a[c(1, diff(a)) != 0] 
+0

非常感謝你,做工精細! – jaclea

+0

然後將其標記爲您的問題的答案的任何機會? –

+1

當然,在6分鐘內... – jaclea

2

使用我最喜愛的工具:

Rgames> rle(a<-c(0,0,0,1,1,0,0,2,2,2)) 
Run Length Encoding 
    lengths: int [1:4] 3 2 2 3 
    values : num [1:4] 0 1 0 2 
+0

非常好。這正是我所需要的,因爲我也希望價值變化的指數...... :) – jaclea

+1

@jaclea - 如果您願意,您可以更改您接受的答案。 –