У меня есть набор данных из 100 000 записей. Моя проблема заключается в типе «многие ко многим», где мне нужно вычислить нечеткую оценку столбца имени в каждой строке со 100 тысячами строк. Я использую цикл for для перебора каждой строки и расчета оценки нечеткости с помощью метода применения pandas. Реальная проблема заключается в том, что код занимает около 15 часов, поэтому я попытался использовать параллельную обработку и многопроцессорную обработку, чтобы сократить это время, но в конечном итоге не смог применить такие вещи.
Dataframe выглядит, как показано ниже:
Код: Выделить всё
id Name
1 Alpha
2 Beta
3 Gamma
4 Theta
5 Lambda
. .
. .
. .
and so on to 100k records
Я ожидаю создать фрейм данных, который будет содержать данные со значением нечеткости выше 75.
Ожидаемый результат:
Код: Выделить всё
id_1 Name_1 id_2 Name_2 Score
1 Alpha 39 Alph 88
3 Gamma 78 Gamme 80
4 Theta 56 heta 88
Я не могу использовать pd.merge для перекрестного соединения, а затем вычислить оценку с помощью метода apply, поскольку этому методу требуется много оперативной памяти.
Подробнее здесь:
https://stackoverflow.com/questions/747 ... z-function