StanとRでベイズ統計モデリング サポートページ

December 24, 2023 · View on GitHub

概要

このリポジトリではデータファイル, Stanコード, 実行するRコード, 図を描くRコード, 画像ファイルを公開しています.

本書では基本的に以下の3つの番号を一致させています.

  • モデル式X-Y
  • Stanコード(modelX-Y.stan
  • 実行するRコード(run-modelX-Y.R

この他に, 図を描くコードfigX-Y.Rがあります. また各章のディレクトリの構成は以下になっています.

  • input:データが格納されています.
  • model:モデルファイル(Stanコード)が格納されています.
  • output:作成した図が含まれています.
  • exercise:練習問題の解答例です.

実行方法

各章のディレクトリに移動してから実行することを想定しています. 例えば4章のrun-model4-5.Rを実行する場合にはRを起動後に以下のようにします.

setwd('RStanBook/chap04/')
source('run-model4-5.R')

練習問題の解答例を実行するには, さらにexerciseディレクトリに移動してから実行することを想定しています.

setwd('RStanBook/chap04/exercise/')
source('ex1.R')

StanやRStanのバージョンアップに伴う補足

RStan 2.32.3 (2023年10月リリース)ではStan 2.26.1という比較的安定しているバージョンを使っています(2023/12/23現在の最新のStanは2.33.0 (2023年9月リリース))。

もしrstanパッケージが将来的に最新のStanを使用するときが来ましたら、本書にある配列の書き方がエラーになる可能性があります。そのときは以下のように修正して読んでください。

修正前修正後
real X[N];array[N] real X;
int<lower=0> Y[N];array[N] int<lower=0> Y;
vector[K] V[N];array[N] vector[K] V;

ちなみに上記の配列の新しい記法は現在のRStanのバージョンでも使用できます。この記法以外に古くなる部分は当面の間ありません。「はじめに」に書いた通り、モデリングの内容自体は簡単に古くなるものではなく、現在でもStanを使った統計モデリングを習得するにはベストな書籍と思っています。

古いバージョンからの差分はこちら

cmdstanrパッケージとの使い分け

cmdstanrパッケージは最新のStanのリリースからそこまで間をあけずにリリースされる傾向があるため、最新のStanの機能を使いたい人にはcmdstanrパッケージがオススメです。個人的にはrstancmdstanrの使用感に大きな差はありません。cmdstanrは発展途中であり、推定結果からMCMCサンプルを取り出すときはrstanのほうが少し手間が少なく入門者向きと思います。

正誤表

こちら

ソースコードの実行環境

主なソフトやパッケージ名執筆時点サポートページ内の現状
OSWindows 7 SP1 (64bit)Windows 11 (64bit)
R3.3.14.3.2
RtoolsRtools34Rtools43
rstan2.11.12.32.3
ggplot2.1.03.4.4
ggmcmc1.11.5.1.1
GGally1.1.02.2.0
patchwork-1.1.3
ellipse0.3.80.5.0
hexbin1.27.11.28.3
ggtern2.1.13.4.2
ggrepel0.50.9.4
mvtnorm1.0.51.2-4
gtools3.5.03.9.5
NipponMap-0.2