フィクスチャを使ったデータパイプラインのユニットテスト
前回の動画では、ユニットテストによってデータパイプラインへの信頼性を高められること、さらに開発の過程でバグを発見する助けにもなることを学びました。この演習では、pytest ライブラリと assert を使って、フィクスチャとユニットテストの両方を実際に書いてみましょう。
ユニットテストの対象となる transform 関数は、参考として以下に示しています。pandas は pd としてインポート済みで、pytest() ライブラリも読み込まれ、使用できる状態になっています。
def transform(raw_data):
raw_data["tax_rate"] = raw_data["total_taxes_paid"] / raw_data["total_taxable_income"]
raw_data.set_index("industry_name", inplace=True)
return raw_data
この演習はコースの一部です
Python で学ぶ ETL と ELT
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define a pytest fixture
@pytest.fixture()
____ ____():
raw_data = pd.read_csv("raw_tax_data.csv")
# Transform the raw_data, store in clean_data DataFrame, and return the variable
clean_data = ____
return ____