我有其測量變量,並且當沒有連接它總是返回看出代替NA
的最後一個值的傳感器。所以在我的向量中,我想用一個空白值替換這些相同的值(例如na.approx
)。替換長度的相同值的序列> 2
set.seed(3)
vec <- round(runif(20)*10)
#### [1] 2 8 4 3 6 6 1 3 6 6 5 5 5 6 9 8 1 7 9 3
但我只想要大於2的序列(3個或更多相同的數字),因爲2個相同的數字可以自然出現。 (在前面例子中的序列標籤將5 5 5
)
我試着用diff
做標記我的相同點(c(0, diff(vec) == 0)
),但我不知道如何應對length == 2
條件...
編輯 我的預期輸出可能是這樣的:
#### [1] 2 8 4 3 6 6 1 3 6 6 5 NA NA 6 9 8 1 7 9 3
(3個或更多序列的第二個相同的價值是非常可能是一個錯誤值太)
感謝
涼爽。是否有可能從第二個5開始而不是第三個開始取代NA? (我更新了我的預期輸出) – agenis
是,這將是一個額外的步驟'VEC [其中(is.na(VEC)) - 1] < - NA' –
好吧,我可以與去,雖然它會亂用「天然的「NA ......最初出現在矢量中(可能發生)。我必須首先對他們進行評估。 – agenis