Loggen binnen een datapijplijn
In deze oefening kijken we terug naar de functie die je in een eerdere video hebt geschreven en oefenen we met het toevoegen van logging aan de functie. Dit helpt bij het oplossen van fouten of wanneer je de logica aanpast!
pandas is geïmporteerd als pd. Daarnaast is de module logging geïmporteerd en is het standaard logniveau ingesteld op "debug".
Deze oefening maakt deel uit van de cursus
ETL en ELT in Python
Oefeninstructies
- Maak een log op info-niveau na de transformatie met de string:
"Transformed 'Order Date' column to type 'datetime'." - Log de
.shapevan de DataFrame op debug-niveau vóór en na het filteren.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
def transform(raw_data):
raw_data["Order Date"] = pd.to_datetime(raw_data["Order Date"], format="%m/%d/%y %H:%M")
clean_data = raw_data.loc[raw_data["Price Each"] < 10, :]
# Create an info log regarding transformation
logging.____("Transformed 'Order Date' column to type 'datetime'.")
# Create debug-level logs for the DataFrame before and after filtering
____(f"Shape of the DataFrame before filtering: {raw_data.shape}")
____(f"Shape of the DataFrame after filtering: {clean_data.shape}")
return clean_data
clean_sales_data = transform(raw_sales_data)