Join über Schlüsselspalten

Pandas-Joins für Spreadsheet-Nutzer

John Miller

Principal Data Scientist

Vorgehen (fortgesetzt)

$$

Nach Sichtung und Verständnis der Daten:

  • Beziehung bestimmen
  • Einzigartige Werte in der Schlüsselspalte prüfen

Quadrate

Pandas-Joins für Spreadsheet-Nutzer

Eindeutige Schlüsselspalten

$$ $$ Einzigartige Werte bei einspaltigem Schlüssel

df.duplicated('GameKey').sum()

$$ -- -- Ein Wert von 0 bedeutet keine Duplikate -- --

df.duplicated(['GameKey', 'PlayId']).sum()

Index mit einer Spalte

Index mit mehreren Spalten

Pandas-Joins für Spreadsheet-Nutzer

Vorgehen (fortgesetzt)

$$

Nach Sichtung und Verständnis der Daten:

  • Beziehung bestimmen
  • Eindeutige Werte in der Schlüsselspalte prüfen
  • Merge-Statement schreiben und ausführen

Quadrate

Pandas-Joins für Spreadsheet-Nutzer

Merge ausführen

$$

Das Statement bleibt gleich!

df1.merge(df2, how='inner', on='')

  • Achte auf die Parameter

$$

Volle Syntax: DataFrame.merge(right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), indicator=False, validate=None)

Pandas-Joins für Spreadsheet-Nutzer

Merges validieren

DataFrame.merge(right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), indicator=False, validate=None)

$$

Werte für validate:

  • "one_to_one" oder "1:1"
  • "one_to_many" oder "1:m"
  • "many_to_one" oder "m:1"
  • "many_to_many" oder "m:m" (macht nichts)
Pandas-Joins für Spreadsheet-Nutzer

Lass uns üben!

Pandas-Joins für Spreadsheet-Nutzer

Preparing Video For Download...