如果我有这样的数据帧
a <- c(NA,1,2,NA,4) b <- c(6,7,8,9,10) c <- c(NA,12,13,14,15) d <- c(16,NA,18,NA,20) df <- data.frame(a,b,c,d)
如何通过要求R删除第一行中包含NA的列来删除"a"和"c"列?
我的实际数据集要大得多,这只是一个可重复的例子.
请注意,这与要求删除其中包含任何NA的列不同.我的列可能包含其他NA值.我想删除第一行中带有NA的那些.
您可以使用布尔值向量,表示在这种情况下缺少第一行.
res <- df[,!is.na(df[1,])] > res b d 1 6 16 2 7 NA 3 8 18 4 9 NA 5 10 20