R 关于缺失数据的问题
在矩阵中,如果有一些丢失的数据记录为'NA'R 关于缺失数据的问题,r,matrix,na,R,Matrix,Na,在矩阵中,如果有一些丢失的数据记录为'NA' 如何删除矩阵中带有NA的行 我可以使用na.rm 如果要删除包含NA的行,可以使用apply()应用快速函数检查每一行。例如,如果矩阵是x goodIdx <- apply(x, 1, function(r) !any(is.na(r))) newX <- x[goodIdx,] goodIdx我认为na.rm通常只在函数中起作用,比如平均函数。我会选择完整的。案例: 假设您有以下3x3矩阵: x <- matrix(c(1:8
- 如何删除矩阵中带有
的行李>NA
- 我可以使用
na.rm
goodIdx <- apply(x, 1, function(r) !any(is.na(r)))
newX <- x[goodIdx,]
goodIdx我认为na.rm通常只在函数中起作用,比如平均函数。我会选择完整的。案例:
假设您有以下3x3矩阵:
x <- matrix(c(1:8, NA), 3, 3)
> x
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 NA
然后对矩阵x的行进行索引,并添加“,”以表示您需要所有列。na.omit()
将获取矩阵(和数据帧),并仅返回那些没有na值的行-通过删除错误行,需要完成.cases()
更进一步
> x <- data.frame(c(1,2,3), c(4, NA, 6))
> x
c.1..2..3. c.4..NA..6.
1 1 4
2 2 NA
3 3 6
> na.omit(x)
c.1..2..3. c.4..NA..6.
1 1 4
3 3 6
>x
c、 1..2..3。c、 4..NA..6。
1 1 4
2不适用
3 3 6
>na.省略(x)
c、 1..2..3。c、 4..NA..6。
1 1 4
3 3 6
> complete.cases(x)
[1] TRUE TRUE FALSE
> x <- data.frame(c(1,2,3), c(4, NA, 6))
> x
c.1..2..3. c.4..NA..6.
1 1 4
2 2 NA
3 3 6
> na.omit(x)
c.1..2..3. c.4..NA..6.
1 1 4
3 3 6