見出し画像

Modelの値をDataFrameにしたい

前回までの記事でpandas_datareaderを使って取得した値をModelに格納するところまでは記載しました。

今度はそのModelデータを使用するときにハマったことを書きたいと思います。

Modelからデータを取得する際、QuerySet形式で取得できます。

そのままだと差分や変化量を出したい場合は自前で計算する必要があります。面倒なのでDataFrameでpct_changeやdiffを使用したいです。

これは結構面倒だなと思っていたところ、神ライブラリがありました。

django_pandasです!これを使えばModelを簡単にDataFrameに変換できます。

from django_pandas.io import read_frame

# Stockは以前に作成したModelです。
stock_data = Stock.objects.all()
df = read_frame(stock_data, fieldnames=['symbol', 'date', 'high', 'low', 'open', 'close', 'volume', 'adj_close'])

django_pandas.ioのread_frameを使えばあっという間にDataFrameの完成です。助かりました。。


この記事が気に入ったらサポートをしてみませんか?