Patronen uit strings extraheren
De kolom Length in de hiking-gegevensset is een kolom met strings, maar hierin staat wel het aantal mijlen voor de hike. We gaan dit aantal mijlen extraheren met reguliere expressies en vervolgens een lambda in pandas gebruiken om de extractie op de DataFrame toe te passen.
Deze oefening maakt deel uit van de cursus
Preprocessing voor Machine Learning in Python
Oefeninstructies
- Zoek in de tekst in het argument
lengthnaar getallen en decimalen met een geschikt patroon. - Extraheer het overeenkomende patroon en zet het om naar een float.
- Pas de functie
return_mileage()toe op elke rij in de kolomhiking["Length"].
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Write a pattern to extract numbers and decimals
def return_mileage(length):
# Search the text for matches
mile = re.____(____, ____)
# If a value is returned, use group(0) to return the found value
if mile is not None:
return float(____)
# Apply the function to the Length column and take a look at both columns
hiking["Length_num"] = ____.apply(____)
print(hiking[["Length", "Length_num"]].head())