2015-02-24 27 views
0

從例子(data.table)data.table,用數字鍵進行二進制搜索?

,我們有以下幾點:

DT = data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9) 
setkey(DT,x) 

DT["a"] # binary search. 

是可以執行這樣的任務,如果關鍵是數字?說

setkey(DT,y) 
+1

阿倫在更好的護身符工作:https://github.com/Rdatatable/data.table/issues/944他會歡迎你輸入如果你覺得他們缺少某些東西。 – Roland 2015-02-24 10:14:35

+0

實際上,這個問題已經被多次詢問過了,一個簡單的Google搜索會返回很多變體。看看鏈接上的@Aruns回答。 – 2015-02-24 10:15:24

+0

@Roland謝謝,我會牢記小插曲和大衛,我想我被鎖定在R和SO的幫助之下。 – DJJ 2015-02-24 10:17:50

回答

2

是的,當然:

setkey(DT,y) 
DT[.(3)] 
# x y v 
#1: a 3 2 
#2: b 3 5 
#3: c 3 8