如何在 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