如何在R中找到data.table物件列中只出現一次的值的索引?
要查詢R中data.table物件列中只出現一次的值的索引,我們可以按照以下步驟操作:
首先,建立一個data.table物件。
然後,結合使用which函式、duplicated函式和單方括號進行子集選擇,查詢列中只出現一次的值的索引。
示例1
建立data.table物件
讓我們建立一個如下所示的data.table物件:
library(data.table) x<-sample(1:10,25,replace=TRUE) DT1<-data.table(x) DT1
輸出
執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出在您的系統上可能會有所不同):
x 1: 3 2: 7 3: 7 4: 2 5: 4 6: 8 7: 10 8: 4 9: 5 10: 9 11: 1 12: 5 13: 8 14: 10 15: 1 16: 10 17: 2 18: 1 19: 10 20: 10 21: 8 22: 2 23: 1 24: 10 25: 4 x
查詢列中只出現一次的值的索引
使用which函式、duplicated函式和單方括號進行子集選擇,查詢data.table物件DT1的x列中只出現一次的值的索引:
library(data.table) x<-sample(1:10,25,replace=TRUE) DT1<-data.table(x) which(!(DT1$x %in% DT1$x[duplicated(DT1$x)]))
輸出
[1] 1 10
示例2
建立data.table物件
讓我們建立一個如下所示的data.table物件:
library(data.table) y<-rpois(25,10) DT2<-data.table(y) DT2
輸出
執行上述指令碼後,將生成以下輸出(由於隨機化,此輸出在您的系統上可能會有所不同):
y 1: 9 2: 14 3: 7 4: 5 5: 11 6: 13 7: 8 8: 11 9: 9 10: 10 11: 6 12: 11 13: 10 14: 10 15: 14 16: 13 17: 13 18: 15 19: 9 20: 17 21: 11 22: 17 23: 20 24: 7 25: 12 y
查詢列中只出現一次的值的索引
使用which函式、duplicated函式和單方括號進行子集選擇,查詢data.table物件DT2的y列中只出現一次的值的索引:
library(data.table) y<-rpois(25,10) DT2<-data.table(y) which(!(DT2$y %in% DT2$y[duplicated(DT2$y)]))
輸出
[1] 4 7 11 18 23 25
廣告