如何在R中通过忽略某一列中的值来筛选data.table对象?


为了在R中通过忽略某一列的值来筛选data.table对象,我们可以按照以下步骤操作:

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

  • 然后,使用单方括号通过忽略某一列中的值来筛选data.table对象。

示例

创建data.table对象

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

library(data.table)
x<-sample(1:3,25,replace=TRUE)
y<-sample(1:4,25,replace=TRUE)
z<-sample(1:3,25,replace=TRUE)
DT<-data.table(x,y,z)
DT

输出

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

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

通过忽略某一列中的值来筛选data.table对象

使用单方括号来筛选data.table对象DT,忽略y列中的4,如下所示:

library(data.table)
x<-sample(1:3,25,replace=TRUE)
y<-sample(1:4,25,replace=TRUE)
z<-sample(1:3,25,replace=TRUE)
DT<-data.table(x,y,z)
DT[DT$y!=4,]

输出

    x y z
1:  1 1 1
2:  1 3 1
3:  3 3 1
4:  1 2 3
5:  1 3 2
6:  1 3 1
7:  3 3 1
8:  3 2 2
9:  3 1 2
10: 3 3 1
11: 3 2 1
12: 1 1 3
13: 3 2 1
14: 2 2 1
15: 3 3 1
16: 1 1 1

更新于:2021年11月10日

浏览量:110

启动您的职业生涯

完成课程获得认证

开始学习
广告