2017-02-13 9 views
0

2つのデータセットを比較するタスクがありました。それぞれ2つの別々のcsvファイルに格納されています。それらは両方とも数千のエントリを持つ2つの列を含んでいます。私は2つの別々の配列を塗りつぶしましたが、今は各配列の1つの列を比較したいと思います。私は完全にpythonに緑色で、2つの配列を比較する最良の方法については非常に混乱しています。ここで2つの多次元配列をループを使って比較する

は私の現在のコードです:最初の2行は一致しない場合

import numpy as np 
with open ('Flight_3_GPS.csv', 'r') as f: 
    GPS = [] #create an empty list 
    for line in f: 
     GPS.append([float(i) for i in line.strip('\n').split(',')]) 
    GPS = np.transpose(GPS) 
    #print(GPS[0][87]) #[column][row] 

with open ('Flight_3_V_Data.csv', 'r') as f: 
    Data = [] #create an empty list 
    for line in f: 
     Data.append([float(i) for i in line.strip('\n').split(',')]) 
    Data = np.transpose(Data) 
    #print(Data[1][56]) #[column][row] 

i=0 
j=0 
for i in GPS[i,1]: 
    for j in Data[j,1]: 
     if i == j: 
      print(j) 
      print(i) 

ので、その後、ループは、行の次のペアに

おかげ


を比較する上で動きます
+0

* element-wise * comparison:* i *番目の行が両方のファイルで等しいかどうかを指定するブール値のリスト? –

+0

どのようなエラーや予期しない出力が得られますか? – Aaron

+0

私の2つの配列が:[A、B]と[C、D]なら、そうです。私は、BとCが等しい場合には、A –

答えて

1

pythonでは、最初の列は0ではありません。

for i,val_gps in enumarate(GPS[:,0]): 
    if val_gps == Data[i,0]: 
     print('GPSindex ' + str(i) + ' : ' + str(val_gps) ' matches with dataindex ' + str(i) + ' : ' + str(Data[i,0])) 
+0

の値を見つけることができるように設定したいと思います。コードを実行して、今は私に「パーズ中の予期しないEOF」と言っています... –

+0

Ho 、私は)印刷ラインの最後に逃した。申し訳ありません – ymmx

関連する問題