在data.table行。如果我有以下幾點:選擇僅使用第二個關鍵
a<-data.table(id=rep(letters[1:4],2), var=c(1,2,1:6), key="id,var")
我可以複製「通常」 a[a$id=="a" & a$var==1,]
與
> a[.("a",1)]
id var
1: a 1
但怎麼樣a[a$var==1,]
?如果我改變"a"
與整個id
專欄中,我沒有得到我所期望的:
> a[.(id,1)]
id var
1: a 1
2: a 1
3: b 1
4: b 1
5: c 1
6: c 1
7: d 1
8: d 1
在此先感謝。
任何錯誤使用'一[VAR == 1]'? – flodel
@ flodel它是SLOW的... – nigmastar
[子集data.table由第2列僅2列鍵,使用二進制搜索而不是矢量掃描](http://stackoverflow.com/questions/15597685/subsetting-data -table逐第二列只對的一使用-2-列密鑰-二進制搜索)。備用可能重複:http://stackoverflow.com/questions/15769837/subsetting-data-table-by-not-headkeydt-m-using-binary-search-not-vector-sca – GSee