Geavanceerde transformaties toepassen op DataFrames
pandas heeft een enorme hoeveelheid ingebouwde transformatietools, maar soms heb je meer geavanceerde logica nodig in een transformatie. Met de functie apply kun je een zelfgeschreven functie toepassen op een rij of kolom van een DataFrame, waardoor je geavanceerde transformaties en featuregeneratie kunt uitvoeren.
De functie find_street_name() haalt de straatnaam uit "street_address" en laat het huisnummer weg. Deze functie is in het geheugen geladen en kan direct worden toegepast op de DataFrame raw_testing_scores.
Deze oefening maakt deel uit van de cursus
ETL en ELT in Python
Oefeninstructies
- Gebruik in de definitie van de functie
transform()de functiefind_street_name()om een nieuwe kolom met de naam"street_name"te maken. - Gebruik de functie
transform()om de DataFrameraw_testing_scoresop te schonen. - Print de head van de DataFrame
cleaned_testing_scoresen controleer de nieuwe kolom"street_name".
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
def transform(raw_data):
# Use the apply function to extract the street_name from the street_address
raw_data["street_name"] = raw_data.____(
# Pass the correct function to the apply method
____,
axis=1
)
return raw_data
# Transform the raw_testing_scores DataFrame
cleaned_testing_scores = ____(raw_testing_scores)
# Print the head of the cleaned_testing_scores DataFrame
print(cleaned_testing_scores.____())