在N维numpy数组

时间:2017-04-24 18:31:32

标签: python numpy multidimensional-array scipy

假设我有一个由所有这些范围的组合组成的numpy数组:

A = numpy.arange(0.05, 7.05, 0.5)
B = numpy.arange(0.0,0.75, 0.15 )
C = numpy.arange(8.0, 12.0, 0.15)
D = numpy.arange(-2, 2, 0.15)
E = [0.5, 0.55, 0.6, 0.65, 0.7]
F = numpy.arange(0.1,2.1, 0.1)
G = [0.5, 1.0, 1.5]

生成的数组称为A,是7行和15309000列。

现在我有了这个组:

group = [a ,b, c, d, e, f, g] = [1.22, 0.34, 9.45, -1.43, 0.52, 0.23, 0.64]

我正在寻找一种方法来找到A中最接近前一组的组合,因为所选择的组(最接近的组合)将是所有值最接近要查找的组的组:a是A中最接近的值,b是B中最接近的值,等等......

对于这种特殊情况,最接近的组将是:

closest_group = [1.05, 0.3, 9.5, -1.4, 0.5, 0.2, 0.5]

我找到了与scipy.signal.KDTree不同的答案,例如:

A[spatial.KDTree(A).query(set)[1]]

但不幸的是,这并没有收敛,引发了这个错误:

  

RecursionError:超出最大递归深度

0 个答案:

没有答案