Prophetで金融データの予測
ProphetとはFacebookが開発した時系列の予測ツールです。
github.com
pip環境であれば、pip installでインストールできます。
※インストールに少し時間がかかります。
データはなんでもいいのですが、
今回は、FREDより以下のデータを拝借しました。
10-Year Treasury Constant Maturity Rate | FRED | St. Louis Fed
データさえ用意できれば、あとはほとんどチュートリアルに従えば予測が出せます。
注意点は、データフレームのカラム名が指定されているので変更が必要なことくらい。
今回は、(200*5)年分の予測を出してみたいと思います。
結果が以下。
この結果ではweekly_seasonalityをTrueにしているだけですが、
FRB政策金利アナウンス日などのイベントデータを取り込むなど
精度向上の余地はまだまだありそうですね。
時系列データの日付をインデックスとして扱いたくない場合
なぜかいつも忘れるのでメモ
.reset_idnexで日付をカラムにできる。
文字列ではなくて、Timestampになっているかは確認すること
Numpy配列のスライスメモ
初歩的なことではあるが、Numpy配列のスライスがコードだけではイメージしづらかったので自分用に整理する。
import numpy as np array1 = np.arange(16).reshape(4,4) array1 array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11], [12, 13, 14, 15]])
1行だけスライス
array1[:1} array([[0, 1, 2, 3]])
範囲を指定
array1[1:3] array([[ 4, 5, 6, 7], [ 8, 9, 10, 11]])
本題:カンマ区切り。順にたどればわかりやすいが、列をスライスできる。
array1[0:3,0:3] array([[ 0, 1, 2], [ 4, 5, 6], [ 8, 9, 10]])
初見は以下のような形。わかりづらい…
array1[0::,0] array([ 0, 4, 8, 12])
pip installでつまづく"Command "python setup.py egg_info" failed with error code 1 in ~"
pip installで以下のエラー。
Command "python setup.py egg_info" failed with error code 1 in ~/hoge/hoge
setuptoolsの問題。
pip install --upgrade setuptools
動いた