首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在numpy数组上迭代的函数。

在numpy数组上迭代的函数。
EN

Stack Overflow用户
提问于 2018-05-25 15:18:51
回答 1查看 65关注 0票数 1

我编写了一个简单的函数,它用一些固定的索引在numpy数组上迭代。

代码语言:javascript
运行
复制
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超出了大小为1的轴0的界限

我做错了什么?

矩阵V有一个形状:(1,2,1,2),看起来:

代码语言:javascript
运行
复制
[[[[-0.00009 -0.00001]]

  [[-0.00001 -0.00001]]]] 

i = 0, j = 0, nA = 1, nB = 2 

看一看循环经过一次迭代:

代码语言:javascript
运行
复制
i,j,k,l,V:  0 0 0 0 -9.39073120245e-05

然后抛出错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-25 15:39:23

Vijkl的形状为(i,j,nA,nB),因此每个维数的最大极限为(i-1,j-1,nA-1,nB-1)。您正在超过前两个维度的最大范围。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50532385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档