2
İki data.tables var. Bir diğerideki olayları saymak için anahtarları bir arada kullanmak istiyorum.R data.table varsayılan dış birleştirme setkey ile, satır sayma
DT1 <- data.table(A =c("v1","v2","v1","v2","v3","v4","v5","v6","v1","v2"),B=c(1,11,111,2,22,222,3,33,333,4))
DT2 <-data.table(C=c("v1","v3","v99"))
setkey(DT1,A)
setkey(DT2,C)
DT1'deki satırları bulmak için DT2 kullanın, bir dış birleştirmeyi döndürür.
nrow(DT1[DT2,]) #returns 5 (v1*3, v3*1, v99) "v99" not in DT2
DT1[DT2,]
A B
1: v1 1
2: v1 111
3: v1 333
4: v3 22
5: v99 NA
Aynı sözdizimiyle sola katılmaya zorlanabilir mi?
'DT1 [DT2, nomatch = 0L] '? – mtoto
Aslında bu * bir sol birleştirildi ... bir dış birleşim birleştirme olur (DT1, DT2, by.x = "A", by.y = "C", hepsi = TRUE) '. Ve 'v99' * *, DT2'de –
’da bulunur. – iboboboru