Logging in una data pipeline
In questo esercizio, riprenderemo in mano la funzione che hai scritto in un video precedente e faremo pratica ad aggiungere il logging alla funzione. Questo ti aiuterà quando dovrai risolvere errori o apportare modifiche alla logica!
pandas è stato importato come pd. Inoltre, è stato importato il modulo logging e il livello di log predefinito è stato impostato su "debug".
Questo esercizio fa parte del corso
ETL and ELT in Python
Istruzioni dell'esercizio
- Crea un log di livello info dopo la trasformazione, passando la stringa:
"Transformed 'Order Date' column to type 'datetime'." - Registra la
.shapedel DataFrame a livello di debug prima e dopo il filtraggio.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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)