RでX-13ARIMA-SEATSを使う(2019年6月版)
自分用の覚書
CRANにあるx13binaryが使えるようになったので、自分でX-13ARIMA-SEATSをコンパイルする必要がなくなり、MacとWinの違いもなくなりました。
[インストール]GNU Rで二つのパッケージをインストール
- install.packages("seasonal")
注:seasonalをインストールするとx13binaryも一緒にインストールされる。
[GNU Rのパッケージseasonalからx13asを実行する]
- パッケージの読み込み
library(seasonal) - checkX13()を実行して、"Congratulations! 'seasonal' should work fine!"と表示されれば問題なし
- m <- seas(AirPassengers)
- plot(m)
- 季節調整済み系列(s11)の取り出し
m$series$s11 - プロットの一例
- plot(AirPassengers) #元のデータ
- lines(m$series$s11, col="red") #季節調整値
-
lines(m$series$s12, col="blue") #トレンド
seasonalの使い方についてvignettesを参照されたい
https://cran.ism.ac.jp/web/packages/seasonal/vignettes/seas.pdf
[注意すべき点]
- X-13ARIMA-SEATSから季節調整済み系列はs11となった模様(X-12-ARIMAのd11。プログラムする人はお気をつけ下さい)
https://www2.census.gov/software/x-13arima-seats/x13as/unix-linux/documentation/docx13ashtml.pdf
[s10等のまとめ]
s10: 季節成分(seasonal component)
s11: 季節調整値(seasonal adjustment component)
s12:トレンド成分(trend component)
s13:不規則成分(irregular component)
詳しくは以下のTable 7.31を参照
https://www2.census.gov/software/x-13arima-seats/x13as/unix-linux/documentation/docx13ashtml.pdf
[Predefined regression variables]
外れ値やレベルシフトの調整にはregression.variablesを使う。使い方は以下のTable 7.28を参照
https://www.census.gov/ts/x13as/docX13AS.pdf
GNU R (Windows10)にR Interface to 'Keras'をインストールする
GNU R (実際の作業はRstudio)でKerasをインストールしたときの覚書。基本的には(1)Anacondaインストール、(2)Anacondaでtensorflowインストール、(3)R上でdevtoolsインストール、(4)devtoolsでkerasインストール、(5)Windows上でRtoolsインストールと言う手順になる。
[Anacondaとtensorflowのインストール]
最初にAnaconda(Python 3.*)をインストールし、Anaconda Navigatorを起動してtensorflowをインストールする。以下のURLを参照。
[keras: R Interface to 'Keras'のインストール]
Rstudioでの導入は以下の通り。
- Rstudioを管理者として実行する
- install.packages('devtools')(devtoolsをインストールする)
- コンソールに devtools::install_github("rstudio/keras") と入力
- インストール中に"Please download and install Rtools *.*"とRtoolsをインストールするように言われるので、指定されたバージョンのRtoolsをインストールする
[R Interface to 'Keras']
R Interface to 'Keras'の使い方は以下のURL等を参照。
Rstudio (Windows10)でRのでパッケージをインストールする
Rstudio (Windows10)でRのでパッケージ(devtoolsなど)をインストールするとき、パスに日本語がある場合、Rstudioが認識できない(日本語パスの部分が????になる)。
libpathsでパスを指定する方法もあるが、一番簡単なのはRstudioを管理者権限で起動してインストールする方法かもしれない(もっと簡単な方法があれば誰か教えてください)。
- Win10のスタートメニューでrstudioを入力し、Rstudioが表示されたら、右クリックして「管理者として実行」を選択
- Rstudioが起動したらコンソールでinstall.packages('devtools')を実行する
matlab 警告: 名前が存在しないか、ディレクトリではありません
Windows10でDynareをインストールしたあとに「matlab 警告: 名前が存在しないか、ディレクトリではありません」という警告がでる問題の解決方法。
cd C:\dynare\4.5.7\contrib\ms-sbvar\TZcode\MatlabFiles\
edit startup.m
ms-sbvarを使わない場合は、以下の2つの行をコメントアウトすればよい。
path(path,'/Users/tzha/ZhaData/Git/TZcode/MatlabFiles')
path(path,'/Users/tzha/ZhaData/Git/TZcode/MatlabFiles/MSV')
シンボリック関数を関数ハンドルに直して、arrayfunを適用する
arrayfunの使い方 - ハリ・セルダンになりたくて(はてダから移行中)
と
Matlabのシンボリック式を無名関数(関数ハンドル)に変換する関数 - ハリ・セルダンになりたくて(はてダから移行中)
の合わせ技。
sf(x,y)というシンボリック関数があった場合、それにarrayfunを適用するには関数ハンドル(無名関数)に変換する必要がある。手順は以下の通り。
arrayfun(sf, [1 2], [3 4])
はエラーになる。
hf = matlabFunction(sf)
arrayfun(hf, [1 2], [3 4])