如何从numpy数组返回索引

时间:2019-08-02 14:55:53

标签: python numpy

我有一个10个值的数组(x),另一个有100个值的数组(y)。 x中的8个值包含在y中,而x中有2个不包含在y中的值。

我要做的是计算y中每个值与x中每个值之间的距离,并返回最小值。 然后将y中最接近的值返回到x中的值,并对其进行图形绘制并绘制出来。

这是我到目前为止所取得的成就的一个例子...

m, n, x

我现在如何返回y中与min中的值相对应的值的数组?

我想做的是让一个数组z等于用于最小化np.min(D,axis = 1)的最佳y值,并以与x相同的顺序排列,这样我就可以以下

x = np.array([1,2,3,4,5,6,7,1100,1200,10])
y = np.linspace(0, 100, 100)

D = spatial.distance_matrix(x.reshape(-1,1), y.reshape(-1,1))

min = np.min(D, axis=1)

比较所有找到的值的匹配程度。

谢谢!

1 个答案:

答案 0 :(得分:0)

用于搜索索引:

arr = np.array([1,2,3,4,5,6,7,8])
val = np.array([3,7,5,3])
index = [arr.tolist().index(i) for i in val]
index

但是在您的情况下,这将引发错误,因为找不到匹配的值。