データパイプラインでのロギング
この演習では、前の動画で作成した関数を振り返り、関数にロギングを追加する練習をします。エラーのトラブルシューティングやロジックを変更するときに役立ちます。
pandas は pd としてインポート済みです。加えて、logging モジュールもインポートされ、デフォルトのログレベルは "debug" に設定されています。
この演習はコースの一部です
Python で学ぶ ETL と ELT
演習の手順
- 変換後に info レベルのログを作成し、次の文字列を渡してください:
"Transformed 'Order Date' column to type 'datetime'." - フィルタリングの前後で、DataFrame の
.shapeをデバッグレベルでログに記録してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
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)