以下是我如何找到数字和分类的列名。
split(names(my.data), sapply(my.data, function(x) paste(class(x), collape=" ")))$factor
split(names(my.data), sapply(my.data, function(x) paste(class(x), collape=" ")))$numeric
从上面的代码中我得到了30个分类变量和70个数值变量的列表。我试图找出所有这些中缺失变量的数量。
我正在寻找的输出: 在所有因子变量中: Variable1有xyz NA' s
在数值变量列表中 Variable1有xyz NA' s
答案 0 :(得分:0)
在基地R你可以这样做:
var_idxs <- apply(my_data, 2, function(x){is.numeric(x) || is.factor(x)})
vars <- names(my_data)[var_idxs]
apply(my_data[vars], 2, function(x){sum(is.na(x))})
虽然我同意@akrun认为dplyr方式更优雅:)