У меня есть 2 pandas данных в python. Один очень маленький df1
(<200 строк), а другой очень большой <code>df2 (> 20 миллионов строк). Я хочу сравнить маленький df с большим, и получить все индексы большего кадра данных df2
для всех соответствующих строк.
Я кодировал следующее -
df3 = df2[df2['Row Idx'].isin(df1['Row Idx'])]
При этом все строки df2
сравниваются с df1
, что неэффективно, а выполнение очень медленное. Для 200 строк это занимает около 30 секунд. Я пытался запустить его в Google Colab и AWS также, но производительность аналогична.
Это сравнение выполняется в al oop для ~ 400K раз согласно некоторому условию.
Есть ли способ улучшить производительность?