世界一簡単なrstanコード

もう自分のモデルがどこまで混沌としているかわからなくて,rstanをつかいながらごく簡単なものを確かめるところまで戻ってきた。

ある標準正規分布から乱数発生に寄って得られたデータセットyの平均と分散を推定するプログラム。一瞬で終わる。確実に収束する。まあ初めてMCMCする人はここから確認するとよいかもしれないので,一応書きさらしておく。このままRにコピペで動きます。

2015.03.05 追記)修正を行いました。修正点についてはこちらを参照。

library(rstan)
n <- 100
mu <- 50
sig <- 10
y <- rnorm(n,mu,sig)

stancode <- '
data{
  int<lower=0> T;
  real N[T]; // data
}

parameters {
  real mu;
  real<lower=0> s2;
}

model{
 N~normal(mu,sqrt(s2));
 s2~cauchy(0,5); 
}
'
datastan <- list(N=y,T=n)
fit <- stan(model_code = stancode,data=datastan,iter=5000,chain=4)
traceplot(fit,ask=T)
print(fit,digit=3)
日記
自粛生活日記07/09

だらだら書くよ。飲んでるからね。     自粛生活も三ヶ月ぐらいになりますかね。 …

日記
insideな毎日

授業が始まった。最初は不安もあったし,学生はどう受け止めるんだろう,と思うことも多かったが,開始から …

日記
いよいよだぞぅ

「気を緩めては行けない」らしいけど、新規の罹患者数も2桁、50人以下の日々も続いて、そろそろ出口が見 …