ist es möglich zu tun, fuzzy-match-merge mit python pandas?

Habe ich zwei DataFrames, die ich Zusammenführen möchten, basierend auf einer Spalte. Jedoch, aufgrund von alternativen Schreibweisen, unterschiedliche Anzahl von Leerzeichen, die Abwesenheit/Anwesenheit von diakritischen Zeichen, ich möchte in der Lage sein zu verschmelzen, solange Sie einander ähnlich.

Jedem ähnlichkeits-Algorithmus (soundex, Levenshtein, difflib).

Sagen ein DataFrame hat die folgenden Daten:

df1 = DataFrame([[1],[2],[3],[4],[5]], index=['one','two','three','four','five'], columns=['number'])

       number
one         1
two         2
three       3
four        4
five        5

df2 = DataFrame([['a'],['b'],['c'],['d'],['e']], index=['one','too','three','fours','five'], columns=['letter'])

      letter
one        a
too        b
three      c
fours      d
five       e

Dann möchte ich, um die daraus resultierenden DataFrame

       number letter
one         1      a
two         2      b
three       3      c
four        4      d
five        5      e
Ich habe gerade fusioniert ein paar hundert DataFrames gestern mit .rename, in der Regel ist dies eine ganz schnelle Lösung (obwohl ich denke, es hängt davon ab, wie viele Rechtschreibfehler vorhanden sind...) - und ich mag, um zu Steuern, welche Spalte die Namen sind wirklich ähnlich.
Vielleicht sollte ich etwas klarer (Bearbeiten Frage jetzt). Ich Zusammenführen möchten, auf ähnliche Werte zwischen den beiden DataFrames
Ja, mit d6tjoin MergeTop1 notebook

InformationsquelleAutor pocketfullofcheese | 2012-11-29

Schreibe einen Kommentar