如何在包含特定数字的 R 矩阵中删除行?


若要删除包含特定数字的 R 矩阵中的行,我们可以按照以下步骤进行 −

  • 首先,创建一个矩阵。

  • 然后,使用带有 apply 函数的单平方子集来删除包含特定数字的行。

示例

创建数据框

让我们创建一个如下所示的数据框 −

M<-matrix(sample(1:25,100,replace=TRUE),ncol=4)
M

输出

执行时,上述脚本会生成以下输出(此输出因随机化而在系统中有所不同) −

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

删除包含特定数字的行

使用带有 apply 函数的单平方子集来删除矩阵 M 中包含 20 的行 −

M<-matrix(sample(1:25,100,replace=TRUE),ncol=4)
M[!apply(M==20,1,any),]

输出

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

更新于: 11-11-2021

479 views

开启你的 职业

完成课程获得认证

开始学习
广告