У меня есть 2 кадра данных, как показано ниже
df1
PMID References
12755609 2755610
2844048 987
df2
PMID Authors
2844048 CohKBJKenUP
2844048 Markar AB
12755609 GuarnerUJ
12755609 RoshanRJ
2755610 John HV
2755610 Tony KR
987 Maroi KK
Я хотел сравнить столбец из df1 (PMID & References) с PMID df2, если есть совпадающие значения, значения в столбце df (PMID & References) будут заменены авторами. Каждый PMID или ссылки из df1 могут иметь несколько авторов в df2, например, 2844048 имеет 2 двух авторов (CohKBJKenUP, Markar AB), поэтому результаты должны содержать все возможные комбинации
Возможный вывод похож на
PMID References
GuarnerUJ John HV
RoshanRJ John HV
GuarnerUJ Tony KR
RoshanRJ Tony KR
CohKBJKenUP Maroi KK
Markar AB Maroi KK
Я пытался использовать цикл for, но он вызывает проблему с памятью из-за большого размера файла.
Я тоже пробовал это, но это выдало ошибку
Reindexing only valid with uniquely valued Index objects
df1['PMID'] = df1['PMID'].map(df2.set_index('PMID')['author'])
Пожалуйста, предложите возможность получить ожидаемые результаты.