大規模のDataFrameをpickleで保存というのを良くするのですが、
gitにアップするときにpickleだと容量の関係でpushできないことがありました。
そこで、joblibで圧縮してgitにもデータの管理をすることにしました。
pickleで保存と読み込む場合
save_pickle.py
import pandas as pd
df = pd.DataFrame([1,2,3])
df.to_pickle('df.pickle')
read_pickle.py
import pandas as pd
df = pd.read_pickle('df.pickle')
joblibで保存、読み込む場合はこちら。
compressで圧縮率を変えることができます。
圧縮しすぎると圧縮するにも読み込むにも時間がかかるので、
自分の場合は4が良さそうでした。
save_joblib.py
import pandas as pd
import joblib
df = pd.DataFrame([1,2,3])
joblib.dump(df, 'df.joblib', compress=4)
read_joblib.py
import pandas as pd
import joblib
df = joblib.load('df.joblib')