距离内的所有点

时间:2013-09-02 11:20:31

标签: python spatial-query

我真的很绝望。 我想做的事情是: 我有一个2d点列表

    L=[(22.37, 29.48), (20.50, 30.28), (20.50, 30.28), (20.77, 30.01), (20.77, 30.01), (21.04, 29.74), (21.04, 29.74), (22.58, 29.44), (22.78, 29.19), (23.11, 28.87)]

(我的列表有30000个元组(xn,yn))。 现在我想要距离dmax(从每个点)的所有点。 因此我使用了scipy.spatial.KDTree()和query_ball_point。

    import scipy.spatial
    tree = scipy.spatial.KDTree(XY)
    k=np.array(tree.query_ball_tree(tree, dmax))   

我的第一点是

    array([ [ 12475L, 12476L, 15081L, 15082L, 15083L, 22380L, 22381L, 22562L, 22379L, 12469L, 12470L, 13469L, 13470L, 13471L, 13472L, 15084L, 15085L, 15086L, 15087L, 14L, 15L, 16L, 13468L, 22374L, 22375L, 22376L, 22377L, 22378L, 22557L, 22558L, 22559L, 22560L, 22561L, 23091L, 22503L, 22504L, 22505L, 1L, 2L, 3L, 4L, 5L, 6L,...]])

为什么会有这些'L'? 我怎样才能删除这些?

感谢您的帮助!

3 个答案:

答案 0 :(得分:4)

他们是长整数。自己找这样的东西并不难,尝试用'L'搜索'python数字',你会发现类似Why do integers in database row tuple have an 'L' suffix?的问题:)

答案 1 :(得分:2)

无需做任何事。他们是长整数。你的计算很好。

答案 2 :(得分:0)

L不会像其他人指出的那样产生任何影响,你仍然能够使用这些数字通过索引访问数组 - 你为什么不试试呢?有关详细信息,请阅读Integers in computer science