2017-04-04 61 views
1
x=np.array([(1,2,3),(4,2,6)]) 
z=np.zeros((2,3)) 

for i in range(0,x.shape[0]+1): 
    print(i) 
    if x[i,0] > 1: 
     z[i,0]=100 
    else: 
     z[i,0]=200 
    if x[i,1] > 1: 
     z[i,1]=100 
    else: 
     z[i,1]=200 
    if x[i,2] > 3: 
     z[i,2]=100 
    else: 
     z[i,2]=200 

IndexError:索引2超出范围为轴线0的大小为2numpy的IF ELSE构建索引错误

广东话理解为什么我有此错误。

在此先感谢

+0

索引是从零开始所以它的出界,还你遍历行这样的行状在这种情况下,[0]会返回2,您将此值加1也是不正确的 – EdChum

回答

0

这是正确的,因为指数为0和1:

for i in range(0,x.shape[0]):