我想知道如果它包含超过65%的NA,我是否可以删除整个列?如果是,为什么?如果没有,在这种情况下我们为什么以及如何处理NA?
由于
答案 0 :(得分:2)
我们可以使用Filter
删除超过65%值的列作为NAs
Filter(function(x) mean(is.na(x)) <= 0.65, df)
或select_if
library(dplyr)
df %>%
select_if(funs(mean(is.na(.)) <= 0.65))
df <- data.frame(V1 = c(1:5, rep(NA, 5)), V2 = c(1:3, rep(NA, 7)), V3 = c(1:4, rep(NA, 6)))