0

Ich habe eine Tabelle mit Werten wie Adresse, Name, IBAN, E-Mail und möchte identifizieren, wenn ein Kunde das letzte Mal etwas gekauft hat.Fuzzy-Identität Fingerabdruck

Das Problem ist: einige Felder enthalten Rechtschreibfehler, andere wurden absichtlich falsch eingegeben.

Auf GitHub stehen verschiedene Bibliotheken wie https://github.com/seatgeek/fuzzywuzzy, https://github.com/seamusabshere/fuzzy_match oder https://github.com/atom/fuzzaldrin zur Verfügung, um Fuzzy-Suchen basierend auf einer einzelnen und vergleichbaren Spalte durchzuführen. Aber ich möchte mehrere Felder kombinieren - das hört sich nach einem gemeinsamen Problem an und ich habe erwartet, dass ich bestehende Lösungen finden werde.

Können Sie Ansätze für ein solches Problem empfehlen? Gibt es für ein solches Problem Projekte, die mir fehlen? Ist eine regelmäßige String-Distanz über alle Felder in der Regel gut genug?

Antwort

1

Ich erwähnte es in Ihrer anderen Frage, aber die dedupe python librarydoes what you want.

Im Grunde berechnet es den Abstand zwischen jedem Feld in einem Paar von Zeilen, lernt dann optimale Gewichtungen, um diese Abstände in einem einzelnen Datensatzpaar zu kombinieren.