我有一个带有一些缺失值的矩阵
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]
不起作用。除了转换对于大型矩阵而言过于密集的矩阵,我还有哪些选择。
答案 0 :(得分:2)
您需要指定[
的行选择器参数:
A[rowSums(is.na(A)) < ncol(A)/2, ]
产地:
[,1] [,2] [,3]
[1,] 1 NA 7
[2,] 3 5 2