毒くらわば皿まで

rstan 2.10が来てますね。

2.9とちがって,式の代入が< -から=にすることが推奨されているようで,そうなっちゃうと今までのコードも全部書き換えないといけない。
とはいえこれから先はこうなるってんなら,早めに対応しておこうか,と母艦などのパッケージを思い切ってアップデート!

本艦のMacはすんなりアップデートでき,サンプルとして昔ながらの8schoolsを試したら,無事に走りました。もっともエラーとして,


DIAGNOSTIC(S) FROM PARSER:
Warning (non-fatal): assignment operator < - deprecated in the Stan language; use = instead.

って言われちゃいましたけどね。あー,やっぱりかー(当たり前だ)と。

で,書き直しなんだけど,よく見たら


theta[j] = mu + tau * eta[j];

だけでなく,モデルセクションも


model {
target += normal_lpdf(eta | 0, 1);
target += normal_lpdf(y | theta, sigma);
}

って変わってるのね。もとは


model {
eta ~ normal(0, 1);
y ~ normal(theta, sigma);
}

だったんですよ。

ともかくこれで走りました。コンパイルの時にちょっと警告が出たけどね。
これからは,コンパイル時のこの警告を潰していかないといけません。うう,やっと関数が出来上がったと思ったら・・・(苦笑)

[crayon-5bf53354d2199081512282/]

 

ついでに,とMacの上の仮想Windowsは,っとみたら,Rが3.2で止まってた。R3.3.1にあげて,rstanもアップデートする。

ここでRtoolsのバージョン違いがあってうまくいかなかった。最新版Rtools34はダメみたいで,Rtools33にしか対応してないみたい。でそこからが大変。コンパイル系のエラーが出まくって,rstanがうまく入りません!

仕方がないので,RもRtools33もRstudioもぜんぶアンインストール&再インストールしてから,install.packages("rstan")した。コンパイル時になんか警告が出たっぽいけど,これでやっとインストールできました。
ちなみにrstudioapiとかcolorなんとかってパッケージが入らないみたいで,要求されるままに手動で入力。ちょっと面倒だったな。今度学生に準備させるんだけど,事前に練習しておいてよかったよ・・・。

最後に Ubuntu。久しぶりに起動したので,システムそのもののアップデートをして,インストール。何だかうまくいかなかったんだけど,最終的にソースからコンパイルするとうまく走りました。Windowsより簡単ではあったな。

 

ともあれ,よいこのみんなは締め切りが迫っている中,環境を変えるのは良く無いってことを覚えておこうね!