正如Joe
Kington所说,searchsorted()可以非常快速地搜索元素。要处理不在x中的元素,可以用原始y检查搜索结果,并创建一个掩码数组:
import numpy as npx = np.array([3,5,7,1,9,8,6,6])y = np.array([2,1,5,10,100,6])index = np.argsort(x)sorted_x = x[index]sorted_index = np.searchsorted(sorted_x, y)yindex = np.take(index, sorted_index, mode="clip")mask = x[yindex] != yresult = np.ma.array(yindex, mask=mask)print result
结果是:
[-- 3 1 -- -- 6]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)