Logging innerhalb einer Datenpipeline
In dieser Übung werfen wir einen Blick zurück auf die Funktion, die du in einem früheren Video geschrieben hast, und üben das Hinzufügen von Logging zur Funktion. Das hilft bei der Fehlersuche oder bei Änderungen an der Logik!
pandas
wurde als pd
importiert. Darüber hinaus wurde das Modul logging
importiert und die Standard-Log-Stufe auf "debug"
gesetzt.
Diese Übung ist Teil des Kurses
ETL und ELT in Python
Anleitung zur Übung
- Erstelle nach der Umwandlung ein Info-Level-Protokoll und übergebe den String:
"Transformed 'Order Date' column to type 'datetime'."
- Protokolliere die
.shape
des DataFrames auf der Debug-Ebene vor und nach der Filterung.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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)