Registro de eventos en una canalización de datos
En este ejercicio, vamos a retomar la función que escribiste en un video anterior y a practicar cómo añadir registro de eventos (logging) a la función. ¡Esto te ayudará a depurar errores o a realizar cambios en la lógica!
pandas se ha importado como pd. Además, se ha importado el módulo logging y el nivel de registro predeterminado se ha establecido en "debug".
Este ejercicio forma parte del curso
ETL and ELT con Python
Instrucciones del ejercicio
- Crea un registro de nivel info después de la transformación, pasando la cadena:
"Transformed 'Order Date' column to type 'datetime'." - Registra la propiedad
.shapedel DataFrame a nivel debug antes y después de filtrar.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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)