Логування в межах конвеєра даних
У цій вправі ви повернетеся до функції, яку писали в попередньому відео, і попрактикуєтеся додавати логування до цієї функції. Це стане в пригоді під час усунення помилок або зміни логіки!
pandas імпортовано як pd. Крім того, імпортовано модуль logging, а типовий рівень логування встановлено на "debug".
Ця вправа є частиною курсу
ETL та ELT у Python
Інструкції до вправи
- Створіть лог рівня info після трансформації, передавши рядок:
"Transformed 'Order Date' column to type 'datetime'." - Залогуйте
.shapeдатафрейму на рівні debug до та після фільтрування.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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)