[Numpy-discussion] Calculating density based on distance

Benjamin Root ben.root at ou.edu
Sat Jan 14 16:07:02 EST 2012


On Saturday, January 14, 2012, Thiago Franco de Moraes <
totonixsame at gmail.com> wrote:
> Hi all,
>
> I have the following problem:
>
> Given a array with dimension Nx3, where N is generally greater than
> 1.000.000, for each item in this array I have to calculate its density,
> Where its density is the number of items from the same array with
> distance less than a given r. The items are the rows from the array.
>
> I was not able to think a solution to this using one or two functions of
> Numpy. Then I wrote this code http://pastebin.com/iQV0bMNy . The problem
> it so slow. So I tried to implement it in Cython, here the result
> http://pastebin.com/zTywzjyM , but it is very slow yet.
>
> Is there a better and faster way of doing that? Is there something in my
> Cython implementation I can do to perform better?
>
> Thanks!

Have you looked at scipy.spatial.KDTree?  It can efficiently load up a data
structure that lets you easily determine the spatial relationship between
datapoints.

Ben Root
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20120114/bc7f2737/attachment.html>


More information about the NumPy-Discussion mailing list