如何在 R 的 data.table 对象中删除包含特定数字的行?

r programmingserver side programmingprogramming更新于 2025/6/24 6:52:17

要删除 R 的 data.table 对象中包含特定数字的行,我们可以按照以下步骤操作 −

  • 首先,创建一个 data.table 对象。

  • 然后,使用 apply 函数进行单次平方子集运算,删除包含特定数字的行。

示例

创建 data.table 对象

让我们创建一个 data.table 对象,如下所示: −

library(data.table)
x<-sample(1:25,25)
y<-sample(1:25,25)
z<-sample(1:25,25)
DT<-data.table(x,y,z)
DT

输出

执行时,上述脚本将生成以下输出(由于随机化,此输出将因您的系统而异) −

    x   y z
1:  24  3 24
2:  23  5 11
3:   2  2  8
4:  10  4  9
5:  21 12 20
6:   4 18 16
7:  11 19 19
8:   6 21 17
9:   9 23 23
10:  8  6 2
11: 20  7 15
12:  7 22 22
13: 13 17  4
14: 15 14 13
15: 25 16 14
16: 16  9 12
17:  1 24  5
18:  3 11 10
19: 19 20 25
20: 22 10  3
21: 14 25  7
22: 12  8  1
23: 18  1 18
24: 17 15 21
25:  5 13  6
    x  y  z

删除包含特定数字的行

使用 apply 函数进行单平方子集运算,删除 data.table 对象 DT 中包含 10 的行 −

library(data.table)
x<-sample(1:25,25)
y<-sample(1:25,25)
z<-sample(1:25,25)
DT<-data.table(x,y,z)
DT[!apply(DT==10,1,any),]

输出

     x  y  z
1:  24  3 24
2:  23  5 11
3:   2  2  8
4:  21 12 20
5:   4 18 16
6:  11 19 19
7:   6 21 17
8:   9 23 23
9:   8  6  2
10: 20  7 15
11:  7 22 22
12: 13 17  4
13: 15 14 13
14: 25 16 14
15: 16  9 12
16:  1 24  5
17: 19 20 25
18: 14 25  7
19: 12  8  1
20: 18  1 18
21: 17 15 21
22:  5 13  6
    x  y  z

相关文章