始める無料で始める

ポアソン回帰モデルのプロット

ベイズポアソン回帰モデルの尤度構造を確認しましょう。このモデルでは、ボリューム \(Y\)i を平日ステータス \(X\)i と気温 \(Z\)i で回帰しています:\(Y\)i \(\sim Pois(l\)i) ここで

  • \(log(l\)i\() \; = a + b \; X\)i \(+ c \; Z\)i、したがって
  • \(l\)i\( \; = exp(a + b \; X\)i \(+ c \; Z\)i\()\)

10,000 イテーションで実行した RJAGS シミュレーションの結果 poisson_sim と、マルコフ連鎖の出力データフレームがワークスペースに用意されています:

> head(poisson_chains, 2)
         a b.1.       b.2.          c
1 5.019807    0 -0.1222143 0.01405269
2 5.018642    0 -0.1217608 0.01407691

これらの結果を使って、事後ポアソン回帰のトレンドをプロットします。この非線形トレンドは、stat_function() を使って ggplot() に追加できます。たとえば、fun = function(x){x^2} と指定すると、二次関数のトレンド曲線が描画されます。

この演習はコースの一部です

RJAGS によるベイズモデリング

コースを見る

演習の手順

次の条件を満たす volumehightemp の散布図を作成してください:

  • color を使って平日と週末を区別します。
  • 週末における volumehightemp の線形関係についての事後平均ポアソン回帰トレンド \(l\)il = exp(a + c Z))を表す red の曲線を重ねて表示します。
  • 平日における volumehightemp の線形関係についての事後平均ポアソン回帰トレンド \(l\)il = exp((a + b.2.) + c Z))を表す turquoise3 の曲線を重ねて表示します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Plot the posterior mean regression models
ggplot(___, aes(x = ___, y = ___, color = ___)) + 
    geom_point() + 
    stat_function(fun = function(x){___(mean(___) + mean(___) * x)}, color = "red") + 
    stat_function(fun = function(x){___(mean(___) + mean(___) + mean(___) * x)}, color = "turquoise3")
コードを編集して実行