2017-04-04 58 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]):