我的例子DF:在數據幀,其中包括NA
a1 a2 a3 a4
1 1 1 4 6
2 1 2 3 2
3 2 NA 5 NA
4 2 5 6 3
5 3 1 1 2
6 3 3 2 6
「如果a4 == 6
然後刪除該行。」 所以,我想在這個例子中刪除(只!)第1行和第6行。
我知道這個工程:
df_1 <- df[-c(1, 6), ]
但是我正在尋找一個更通用的解決方案。
我試過的最明顯的方式:
attach(df)
df_1 <- df[ which(a4 != 6),]
detach(df)
然而,這將刪除所有NA
以及和我想留住他們。
a1 a2 a3 a4
2 1 2 3 2
4 2 5 6 3
5 3 1 1 2
然後我嘗試:
df_1 <-df[!(df$a4 == 6),]
但隨後第3行舞蹈打入冷宮,整個行都獲得NA
a1 a2 a3 a4
2 1 2 3 2
NA NA NA NA NA
4 2 5 6 3
5 3 1 1 2
任何想法? 提前謝謝!
可能重複[我如何用R數據框中的零替換NA值?](http://stackoverflow.com/questions/8161836/how-do-i-replace-na-values-with -zeros-in-an-r-dataframe) – amonk
@agerom鏈接不是一個騙局,OP不是試圖用任何東西替換NAs – Cath