Verwendung von merge_ordered()

Daten mit pandas verknüpfen

Aaren Stubberfield

Instructor

merge_ordered()

Tabelle mit Beispiel für merge_ordered()

Daten mit pandas verknüpfen

Methoden im Vergleich

.merge()-Methode:

  • Verknüpfung über Spalte(n)
    • on, left_on und right_on
  • Join-Art
    • how (links, rechts, innen, außen)
    • Standardmäßig: innen
  • Sich überschneidende Spaltennamen
    • suffixes
  • Aufruf der Methode
    • df1.merge(df2)

merge_ordered()-Methode:

  • Verknüpfung über Spalte(n)
    • on, left_on und right_on
  • Join-Art
    • how (links, rechts, innen, außen)
    • Standardmäßig: außen
  • Sich überschneidende Spaltennamen
    • suffixes
  • Aufruf der Methode
    • pd.merge_ordered(df1, df2)
Daten mit pandas verknüpfen

Finanzdaten

Bild einer Zeitung mit Dow-Jones-Tabelle

1 Foto von Markus Spiske auf Unsplash
Daten mit pandas verknüpfen

Börsendaten

Tabellenname: aapl

  date        close    
0 2007-02-01  12.087143
1 2007-03-01  13.272857
2 2007-04-01  14.257143
3 2007-05-01  17.312857
4 2007-06-01  17.434286

Tabellenname: mcd

  date        close    
0 2007-01-01  44.349998
1 2007-02-01  43.689999
2 2007-03-01  45.049999
3 2007-04-01  48.279999
4 2007-05-01  50.549999
Daten mit pandas verknüpfen

Börsendaten verknüpfen

import pandas as pd
pd.merge_ordered(aapl, mcd, on='date', suffixes=('_aapl','_mcd'))
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   NaN
Daten mit pandas verknüpfen

Forward Fill

Vorher-Nachher-Effekt eines Forward Fills. Fehlende Werte in einer Spalte werden mit den vorherigen Werten dieser Spalte aufgefüllt.

Daten mit pandas verknüpfen

Beispiel: Forward fill

pd.merge_ordered(aapl, mcd, on='date', 
                 suffixes=('_aapl','_mcd'), 
                 fill_method='ffill')
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   50.549999
pd.merge_ordered(aapl, mcd, on='date', 
                 suffixes=('_aapl','_mcd'))
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   NaN
Daten mit pandas verknüpfen

Wann sollte merge_ordered() verwendet werden?

  • Geordnete Daten / Zeitreihendaten
  • Auffüllen fehlender Werte
Daten mit pandas verknüpfen

Lass uns üben!

Daten mit pandas verknüpfen

Preparing Video For Download...