R中缺少值的子变量

问题描述 投票:0回答:1

我有一个包含50个变量(列)的数据集,其中有30个变量的缺失值超过其自身观察值的一半。

我想对一个数据集进行子集处理,丢失了太多缺失值的那30个变量。我想我可以一个接一个地做,但是我只是想知道是否有一种方法可以在R中更快地做它。

r
1个回答
0
投票

逻辑:首先使用sapply遍历每列,并检查哪些所有列的缺失值少于一半。第一行的输出是一个逻辑向量,用于子集数据。

ind <- sapply( colnames(df), function(x) sum(is.na(df[[x]])) < nrow(df)/2)
df <- df[colnames(df)[ind]]
© www.soinside.com 2019 - 2024. All rights reserved.