如何删除R矩阵中包含NA的行?

要删除 R 矩阵中包含 NA 的行,我们可以按照以下步骤操作 -

  • 首先,创建一个矩阵。

  • 然后,使用na.omit函数删除包含 NA 的行。

示例

创建矩阵

让我们创建一个矩阵,如下所示 -

M<-matrix(sample(c(NA,rpois(10,5)),100,replace=TRUE),ncol=4)
M
输出结果

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

    [,1] [,2] [,3] [,4]
[1,]  4   4    2    NA
[2,]  4   NA   NA   4
[3,]  4   4    4    6
[4,]  4   3    4    3
[5,]  4   4    4    4
[6,]  4   4    4    4
[7,]  4   4    4    6
[8,]  NA  4    4    4
[9,]  4   4    2    4
[10,] 2   4    4    4
[11,] 6   4    NA   3
[12,] NA  3    4    4
[13,] 2   6    3    4
[14,] 4   4    4    NA
[15,] NA  4    4    4
[16,] 2   4    3    4
[17,] 4   2    4    4
[18,] 4   4    4    4
[19,] 4   4    NA   4
[20,] 4   4    4    4
[21,] 4   6    2    2
[22,] 3   4    2    4
[23,] 4   4    4    6
[24,] 4   NA   4    NA
[25,] NA  4    4    4

删除包含 NA 的行

使用na.omit函数删除矩阵 M 中包含 NAs 的行 -

M<-matrix(sample(c(NA,rpois(10,5)),100,replace=TRUE),ncol=4)
M<-na.omit(M)
M
输出结果
    [,1] [,2] [,3] [,4]
[1,]  4   4    4    6
[2,]  4   3    4    3
[3,]  4   4    4    4
[4,]  4   4    4    4
[5,]  4   4    4    6
[6,]  4   4    2    4
[7,]  2   4    4    4
[8,]  2   6    3    4
[9,]  2   4    3    4
[10,] 4   2    4    4
[11,] 4   4    4    4
[12,] 4   4    4    4
[13,] 4   6    2    2
[14,] 3   4    2    4
[15,] 4   4    4    6
attr(,"na.action")
[1] 8 12 15 25 2 24 11 19 1 14
attr(,"class")
[1] "omit"

猜你喜欢