Aan de slagGa gratis aan de slag

Meerdere tabellen joinen

Je wilt nu een andere invalshoek volgen en spelersposities tijdens punts in kaart brengen. Je herinnert je misschien dat het NextGenStats (NGS)-systeem 10 keer per seconde de posities en oriëntaties van alle spelers vastlegt, bij elke play. Dat is een hoop data!

Je gaat drie data frames joinen als voorbereiding op je analyse. Hieronder staan hun namen en beschrijvingen.

  • games: data op hoog niveau per GameKey
  • punts: data op play-niveau per GameKey en PlayId
  • ngs: positiedata per GameKey, PlayId, GSISID (speler-id) en Time

Een teamlid heeft op regel 2 een list comprehension toegevoegd om in één regel code de index van elk data frame te printen. Voor meer informatie over list comprehensions kun je kijken naar Python Data Science Toolbox Part 2.

Deze oefening maakt deel uit van de cursus

Pandas-joins voor spreadsheetgebruikers

Cursus bekijken

Oefeninstructies

  • Voer een inner join op de index uit met games als primaire data frame.
  • Bekijk de eerste 10 rijen van het resulterende data frame.
  • Zorg dat de index van het nieuwe frame geen duplicaten bevat.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# List the index of each data frame
print([[n for n in df.index.names] for df in [games, punts, ngs]])

# Inner join the data frames
games_all = ____.____([punts, ____], how=____)

# View first 10 rows of new frame
print(____.head(10))

# Check index for duplicates
print(____.index.____.sum())
Code bewerken en uitvoeren