Python 如何在已排序的二维矩阵中搜索
我得到了x-y坐标的列表:Python 如何在已排序的二维矩阵中搜索,python,numpy,Python,Numpy,我得到了x-y坐标的列表: import numpy as np a=np.array([[2,1],[1,3],[1,5],[2,3],[3,5]]) 我已经处理好了 a=np.sort(a,axis=0) print a >[[1 3] [1 5] [2 1] [2 3] [3 5]] 我要执行搜索: a.searchsorted([2,1]) >Value error : object too deep for desired array 有什么办法吗?如果我明白你的要求
import numpy as np
a=np.array([[2,1],[1,3],[1,5],[2,3],[3,5]])
我已经处理好了
a=np.sort(a,axis=0)
print a
>[[1 3] [1 5] [2 1] [2 3] [3 5]]
我要执行搜索:
a.searchsorted([2,1])
>Value error : object too deep for desired array
有什么办法吗?如果我明白你的要求,这项gona工作可能是:
>>> a = [[1, 3], [1, 5], [2, 1], [2, 3], [3, 5]]
>>> [2, 1] in a
True
searchsorted
返回其参数的插入点索引他们使用的是NumPy数组而不是Python列表(即在a中尝试使用[1,5];其中a
是NumPy数组),加上OP显然想要比O(N)
@AshwiniChaudhary-yea对,你能解释为什么它对[1,5]给出false吗