繪製 Poisson 迴歸模型
回想以平日狀態 \(X\)i 與氣溫 \(Z\)i 對流量 \(Y\)i 建立的貝葉斯 Poisson 迴歸模型的概似結構:\(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
你將使用這些結果來繪製後驗的 Poisson 迴歸趨勢。這些非線性趨勢可以透過 stat_function() 加到 ggplot()。例如,指定 fun = function(x){x^2} 會得到二次曲線的趨勢線。
本練習屬於課程
使用 RJAGS 的貝氏建模
練習說明
建立 volume 對 hightemp 的散佈圖,並具備以下要素:
- 使用
color區分平日與週末。 - 疊加一條
red曲線,表示週末時volume與hightemp線性關係的後驗「平均」Poisson 迴歸趨勢 \(l\)i:l = exp(a + c Z)。 - 疊加一條
turquoise3曲線,表示平日時volume與hightemp線性關係的後驗「平均」Poisson 迴歸趨勢 \(l\)i:l = exp((a + b.2.) + c Z)。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# 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")