概要
Kedroで作成される中間ファイルを保存したい。
環境
kedro v0.17.0
方法
公式によると、catalog.yaml
で保存したいファイルの保存先やデータの形式を定義できるみたい。
テキストデータ
catalog.yaml
内で
data: type: text.TextDataSet filepath: data/02_intermediate/data.txt fs_args: open_args_save: mode: "w"
みたいにfs_args
でopen_args_save
を定義。
テキストデータで保存したい場合にはtype: text.TextDataSet
にする。
そして、pipeline.py
の戻り値に
def create_pipeline(**kwargs): return Pipeline( [ node( ・・・ outputs=dict( data="data", ・・・ ), ) ] )
と定義すると中間ファイルとして保存される。
csvファイル
csvファイルの場合は
data_csv: type: pandas.CSVDataSet filepath: data/02_intermediate/data.csv save_args: mode: "w"
みたいにcatalog.yaml
のsave_args
を定義。
このとき、type: pandas.CSVDataSet
とファイルの形式を変更する必要がある。
後は、上記と同様に戻り値を定義する。