2017-09-26 33 views
0

forループを使用して2次元numpy配列を作成したいのですが、2dから3d配列を作成するためにさまざまな方法を試しました私の間違い。これは私がやったことです、最終配列の次元は(10,3,3)でなければなりません。forループを使用して2d numpy配列から3d numpy配列を動的に作成する方法

#this is a sample code 
arr=[] 
for i in range(10): 
    a=np.random.rand(3,3) 
    arr=np.stack(a,arr) 
    #arr=np.append(arr,a) 
    #arr=np.array([arr,a]) 
    #arr[i]=a 

答えて

1

あなたはlist.appendメソッドを使用してarrリストに2d配列を追加し、あなたがforループで行われた後、np.arrayでそれをラップすることによって3d配列にarrを変換することができます:

arr = [] 
for i in range(10): 
    a = np.random.rand(3,3) 
    arr.append(a) 

np.array(arr).shape 
# (10, 3, 3) 

numpy.stack

np.stack(arr).shape 
# (10, 3, 3) 
関連する問題