NPB*_*NPB 13 python indexing numpy closest
我有一个4维数组,即data.shape = (20,30,33,288).我找到了使用最近的数组的索引
index = abs(data - n).argmin(axis = 1), so
index.shape = (20,33,288) with the indices varying.
Run Code Online (Sandbox Code Playgroud)
我想使用data[index] = "values"with values.shape = (20,33,288),但data[index]返回错误"index(8)超出范围(0 <=索引<1)在维度0"或此操作需要相对长的时间来计算并返回一个形状不是矩阵的矩阵似乎没有意义.
如何返回正确值的数组?即
data[index] = "values" with values.shape = (20,33,288)
Run Code Online (Sandbox Code Playgroud)
这似乎是一个简单的问题,有一个简单的答案吗?
我最终想找到index2 = abs(data - n2).argmin(axis = 1),所以我可以执行一个操作,比如在index2处对数据求和数据而不循环遍历变量.这可能吗?
我使用python2.7和numpy版本1.5.1.
Sve*_*ach 14
您应该能够通过访问索引的最大值index使用numpy.indices():
x, z, t = numpy.indices(index.shape)
data[x, index, z, t]
Run Code Online (Sandbox Code Playgroud)