Zusammenführen von zwei CSV-Dateien mit einer gemeinsamen Spalte python
Ich versuche, zwei CSV-Dateien mit einer gemeinsamen ID-Spalte zusammenzuführen und die Zusammenführung in eine neue Datei zu schreiben. Ich habe Folgendes versucht, aber es gibt mir einen Fehler -
import csv
from collections import OrderedDict
filenames = "stops.csv", "stops2.csv"
data = OrderedDict()
fieldnames = []
for filename in filenames:
with open(filename, "rb") as fp: # python 2
reader = csv.DictReader(fp)
fieldnames.extend(reader.fieldnames)
for row in reader:
data.setdefault(row["stop_id"], {}).update(row)
fieldnames = list(OrderedDict.fromkeys(fieldnames))
with open("merged.csv", "wb") as fp:
writer = csv.writer(fp)
writer.writerow(fieldnames)
for row in data.itervalues():
writer.writerow([row.get(field, '') for field in fieldnames])
Beide Dateien haben die Spalte "stop_id", aber ich erhalte diesen Fehler zurück - KeyError: 'stop_id'
Jede Hilfe wäre sehr dankbar.
Vielen Dan