我有一个带有一些缺失值的矩阵
A <- array(c(1, NA, 3, NA, 4, 5, 7, NA, 2 ), dim=c(3,3))
我可以使用删除所有具有缺失值的行
B <- na.omit(A) or B <- A[!complete.cases(A),]
我可以使用删除缺失值超过 50% 的列
B <- A[,colSums(is.na(A)) < nrow(A)/2]
现在我的问题是如何删除缺失值超过 50% 的行?我试过了
B <- A[,rowSums(is.na(A)) < ncol(A)/2]
不起作用。除了转置对于大型矩阵来说过于密集的矩阵之外,我还有什么选择。
您需要指定行选择器参数[
:
A[rowSums(is.na(A)) < ncol(A)/2, ]
生产:
[,1] [,2] [,3]
[1,] 1 NA 7
[2,] 3 5 2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)