PythonのPickleでメモリエラー&高速化対策

※記事内に広告が含まれる場合があります。
Pickleを利用した メモリー対策&処理の高速化 テクノロジー
スポンサーリンク

Pandasでデータの読み書きをした時に処理が重い、「時間がかかる、あれ?メモリーエラーになって保存できない」なんてことがあります。

これはかなり重いデータを扱いマシンスペックよりオーバーした処理をかけた時に発生しますが、できれば今のマシーンを利用して処理したいのでpickleが登場します。

pickleはバイナリデータで保存や読み込みを行うことができるため省メモリー高速で処理がでくますので大量データを扱うのに向いています。本記事ではpickleの利用法について解説いたします。

スポンサーリンク

PandasのPickleのコード比較

Pandasのコードの後にPickleを書くことで直感で理解できるようにします。

まずは必要ライブラリをインポートします。

imort pandas as pd
import pickle

保存方法

pandasだと保存方法は下記

df.to_csv(path名を記載)

Pickleだと保存方法は下記

with open(path名を記載,mode="wb") as f:
    dump(df,f)

コマンドも1行で終わるので簡単です。

読み込み方法

pandasだと保存方法は下記

df.read_csv(path名を記載)

Pickleだと保存方法は下記

with open(path,mode="rb") as f: 
    df = pickel.load(f)

最後に

たったこれだけですが覚えているとメモリーエラー対策やスピードUPにつながりますので有効です。特に自然言語処理や機械学習時に使うケースが多いと思いますのでお役立てくださいませ。

公式サイトのリンクを貼っておきます。

最後に私がPythonの勉強をして入門者から中級者までにこの本1冊あれば習得できるおすすめ本記事も書いております【本1冊で】Python入門から中級までなれるおすすめ本ご興味がある方は御覧くださいませ。

タイトルとURLをコピーしました