Seite 1 von 1

Wie merge ich nach regex?

Verfasst: Dienstag 27. Juli 2021, 20:33
von Brando
Gewöhnlich ist ein merge so konstruiert:
pd.merge(staff_df, student_df, how='left', left_on='Name', right_on='Full Name')

Aber das funktioniert nur, wenn Full Name und Name Übereinstimmung haben. Was ist aber wenn ich den merge immer dann durchführen will, wenn der Name ein Substring ist von Full Name?

Re: Wie merge ich nach regex?

Verfasst: Mittwoch 28. Juli 2021, 02:03
von LukeNukem
Brando hat geschrieben: Dienstag 27. Juli 2021, 20:33 Gewöhnlich ist ein merge so konstruiert:
pd.merge(staff_df, student_df, how='left', left_on='Name', right_on='Full Name')

Aber das funktioniert nur, wenn Full Name und Name Übereinstimmung haben. Was ist aber wenn ich den merge immer dann durchführen will, wenn der Name ein Substring ist von Full Name?
Das hängt wesentlich davon ab, wie und wie eindeutig die Substrings zu den Fullstrings geordnet werden können... Und: RegExen können eine Möglichkeit sein, aber sie sind in der Regel nicht allzu performant. Vielleicht magst Du etwas umfangreicher und genauer ausführen, was Du vorhast und wie Deine Daten aussehen?

Re: Wie merge ich nach regex?

Verfasst: Mittwoch 28. Juli 2021, 08:38
von __blackjack__
Ergänzend zu LukeNukem: Namen können ja auch Teil eines vollen Namens sein an Stellen wo man das so nicht erwartet/haben möchte. Manche Leute haben sogar Nachnamen, die andere als Vornamen haben können.

Re: Wie merge ich nach regex?

Verfasst: Freitag 30. Juli 2021, 01:37
von LukeNukem
__blackjack__ hat geschrieben: Mittwoch 28. Juli 2021, 08:38 Ergänzend zu LukeNukem: Namen können ja auch Teil eines vollen Namens sein an Stellen wo man das so nicht erwartet/haben möchte. Manche Leute haben sogar Nachnamen, die andere als Vornamen haben können.
Ja, unbedingt. In meinem Bücherregal steht sogar ein Buch von einem Herrn, dessen Nachname 1:1 meinem Vornamen entspricht. ;-)