Mesclando dois arquivos CSV por um python de coluna comum

Estou tentando mesclar dois arquivos csv com uma coluna de identificação comum e gravar a mesclagem em um novo arquivo. Eu tentei o seguinte, mas está me dando um erro -

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])

Ambos os arquivos têm a coluna "stop_id", mas estou recebendo esse erro de volta - KeyError: 'stop_id'

Qualquer ajuda seria muito apreciada.

obrigado

questionAnswers(2)

yourAnswerToTheQuestion