2012-03-16 3 views
2

2つのCSVファイルをマッチングして、一致するかどうかに関係なく、新しいCSVファイルを書きたいと思います。Python:CSVの解析とマッチング

私は、各セルが一致している場合、私は「1」を書き込むうとされていない場合、私は新しいCSVファイルに「0」を書きたいということを意味します。

例えば、 最初のファイル (14、女性、高校)

第ファイル (15、男性、高校)

私はそれらが同じ性別かと同じであるかどうかと一致したいです年齢またはそうではない。私は書くことができ ...

f="first_file.csv" 
s="second_file.csv" 
w="writer.csv" 
first = csv.reader(open(f,'rb')) 
second = csv.reader(open(s,'rb')) 
writer = csv.writer(open(w, "w")) 
for row in first: 
    for rwo_2 in second: 

そして私は私が一致することができるかわからない.... ..私を助け、事前にあなたに感謝してください..!

+0

順番に行を一致させますか? 1位〜1位、2位〜2位、...?あなたのファイルの行数は同じですか? – San4ez

答えて

3

これは、あなたがラインごとに一致するようにしたいと仮定して、Nonesとパッド短い行とファイル:

from itertools import izip_longest 

for row1, row2 in izip_longest(first, second, fillvalue=[]): 
    writer.writerow([int(a == b) for a, b in izip_longest(row1, row2)]) 
0

それが繰り返さ行

set(csv1) == set(csv2) 

気にしないだろう。

sorted(csv1) == sorted(csv2)