在一個大型數據框中,我想刪除一行,其中第6列中有1。此外,該行之後的行也應該被刪除。任何人有答案?有條件地刪除一行,然後在另一個R
1 1 neutral 3 450 0
2 1 con 1 538 0
3 1 neutral 3 609 0
4 1 inc 0 451 0
5 1 inc 0 413 0
6 1 neutral 3 425 1
7 1 inc 0 514 0
8 1 con 1 569 0
所以結果應該是這樣的:
1 1 neutral 3 450 0
2 1 con 1 538 0
3 1 neutral 3 609 0
4 1 inc 0 451 0
5 1 inc 0 413 0
8 1 con 1 569 0
我想這一點,但顯然這是不正確的:
while (i<=nrow(Pb)){
if (Pb[i,6]==0 && Pb1[i-1,6]==0) {
newfile <- Pb[i,]
}
i <- i+1
}
'library(data.table); setDT(dt)[,V6:= V6 + shift(V6,1L,type =「lag」)] [V6!= 1 | is.na(V6)]' –
鬼鬼祟祟。不錯的一個@akrun,我不知道將'V6'改爲一個布爾值會讓你使用轉移到dt的子集。 –