2010-08-16 29 views
0

什麼是kdtree的範圍查詢,它是如何通過python完成的?範圍查詢如何在Python的kd-tree中工作?

+0

Python中沒有內置的kD樹 - 事實上,根本沒有樹支持。你用什麼來實現這棵樹? – katrielalex 2010-08-16 12:38:34

+0

@katrielalex,我假設他是指scipy.spatial中的一個。雖然顯然還有其他人,但最明顯的是http://code.google.com/p/python-kdtree/。 – 2011-12-23 04:33:54

回答

1

N個用戶有可能有N種方式來回答這個問題。而你會從他們身上理解的,將是N種方式的合作。更好的是,訪問KdTree Wiki page,無論如何,這都是來自專家的投入的合作。

快樂編碼。

+0

@JasonSundram我沒有得到你。如果您看到,我已經有一個鏈接到KdTree Wiki頁面。請讓自己清楚。 – simplyharsh 2011-12-24 05:16:35

+0

我喜歡這個鏈接,但是以「N個用戶和N個合作伙伴的N種方式」開頭,似乎你在嘲笑提問者。 – 2011-12-24 06:58:37

+1

對不起@JasonSundram,你錯了。在SO上,嘲笑是一個人想的最後一件事。我寫的是開發人員彼此溝通的完美正常方式。 「N路」意味着「多種方式」。而且我沒有回答自己的背景,這顯然沒有明確說明。是否有編輯問題給我的背景下,我會相應地編輯我的答案。另一方面,你在超過3個月後,假定了一個「scipy.spatial」的上下文,並覺得我的回答是一個嘲弄。那麼,我會說它看待同一件事的兩種不同方式。它很酷但是。 – simplyharsh 2011-12-26 06:48:26

3

假設你在談論the k-d tree in scipy.spatial,有幾個範圍查詢。也就是說,有多個函數將一個或多個點和一個半徑作爲輸入,併爲查詢點半徑內的所有點查詢樹。

兩個最明顯的功能是query_ball_pointquery_ball_tree

您可以閱讀源代碼on github以瞭解如何實現這些查詢。

+0

downvote有什麼用? – 2011-12-23 17:04:03

+0

儘管我可能會誤解,但我相信範圍查詢通常是指在k維超立方體內採樣(即,您將第一個座標限制在範圍[a,b]內,第二個座標範圍爲[c,d] ,...,範圍[y,z]的最後一個座標。) – 2014-10-03 18:45:55