遍历 numpy 数组的函数
function which iterates over numpy array
我写了一个简单的函数,它迭代具有一些固定索引的 numpy 数组。
def compute_V(i,j,nA, nB,V):
Vijkl = np.zeros((i,j,nA,nB))
for k in range(nA):
for l in range(nB):
Vijkl[i,j,k,l] = V[i,j,k,l] + 3
return Vijkl
我收到以下错误:
IndexError:索引 1 超出轴 0 的范围,大小为 1
我做错了什么?
矩阵 V 的形状为:(1, 2, 1, 2) 并且看起来:
[[[[-0.00009 -0.00001]]
[[-0.00001 -0.00001]]]]
i = 0, j = 0, nA = 1, nB = 2
看起来循环进行了一次迭代:
i,j,k,l,V: 0 0 0 0 -9.39073120245e-05
然后抛出错误。
Vijkl的形状是(i, j, nA, nB),所以每个维度的最大极限是(i-1, j-1, nA-1, nB-1)。您超出了前两个维度的最大范围。
我写了一个简单的函数,它迭代具有一些固定索引的 numpy 数组。
def compute_V(i,j,nA, nB,V):
Vijkl = np.zeros((i,j,nA,nB))
for k in range(nA):
for l in range(nB):
Vijkl[i,j,k,l] = V[i,j,k,l] + 3
return Vijkl
我收到以下错误: IndexError:索引 1 超出轴 0 的范围,大小为 1
我做错了什么?
矩阵 V 的形状为:(1, 2, 1, 2) 并且看起来:
[[[[-0.00009 -0.00001]]
[[-0.00001 -0.00001]]]]
i = 0, j = 0, nA = 1, nB = 2
看起来循环进行了一次迭代:
i,j,k,l,V: 0 0 0 0 -9.39073120245e-05
然后抛出错误。
Vijkl的形状是(i, j, nA, nB),所以每个维度的最大极限是(i-1, j-1, nA-1, nB-1)。您超出了前两个维度的最大范围。