2016-06-15 12 views
-5

私はこのプログラムを使って211個の配列のリスト(phi0ex)を取得しようとしています。各配列には251 * 251個の要素が含まれています すべて私は251個の要素の配列のリストです私は解決策を見つけたPythonでループ内にループを作成

data=loadtxt('data.csv',delimiter=',') 
data1=data.transpose() 
ngrains=loadtxt('nombre_grain.csv',delimiter=',') 
phi0ex1=211*[zeros(shape(251*251))] 
gr1=zeros(shape=(251,251)) 
for k in range(0,len(ngrains)): 
for i,j in enumerate(data1): 
    for s in range(0,251): 
     gr1[i]=where(s==ngrains[k],1,0) 
phi0ex1[k]=gr1 
print phi0ex1 
+0

最初のループの本体をインデントする必要があります。 – Barmar

+0

この質問は不明ですが、少し徹底的にしたいことを明確にすることはできますか? –

+0

私は "ngrains"ファイルをロードする210の異なる値を含むリストを持っています。他のファイル "data"は250 * 250個の要素を含んでいます。 "data"の各要素を見たいのですが、 "ngrains"の最初の要素と等しいかどうかを確認してください。 250 * 250の配列には、eather 0または1を含んでいます。配列の別のリスト(phi0ex)に入れたいです。私はそれを説明してくれることを願っています。 –

答えて

0

助けに入れてする必要はありません(私は知っているdid'ntこと)の繰り返しそれ自身を行う)(、accully機能場所をintrest示すために君たちに感謝他のループでは、ngrainsのループだけがトリックを行います。

data=loadtxt('data.csv',delimiter=',') 
data1=data.transpose() 
ngrains=loadtxt('nombre_grain.csv',delimiter=',') 
phi0ex=len(ngrains)*[zeros(shape(250))] 

for k in range(len(ngrains)): 
    print ngrains[k]  
    phi0ex[k]=where(data1==ngrains[k],1,0) 

print phi0ex 
関連する問題