比較與對照 Beta 先驗
Beta(\(a\),\(b\)) 分配的定義域為 0 到 1,因此是用來描述你對選舉支持度參數 \(p\) 的自然且彈性的先驗。你可以「調整」Beta 的形狀參數 \(a\) 與 $b$,以建立不同的先驗模型。下面你會把原先的 Beta(45,55) 先驗與兩個替代方案比較:Beta(1, 1) 與 Beta(100, 100)。來自 Beta(45,55) 的 10,000 個 prior_A 抽樣已經在你的工作環境中。
本練習屬於課程
使用 RJAGS 的貝氏建模
練習說明
- 從 Beta(1,1) 先驗抽樣 10,000 次,將輸出指定為
prior_B。 - 從 Beta(100,100) 先驗抽樣 10,000 次,將輸出指定為
prior_C。 prior_sim資料框把prior_A、prior_B與prior_C這些先驗的samples與對應的priors指標合併在一起。若要在同一張圖框上以ggplot()繪製這 3 組「分開的」先驗samples的密度圖,請在aes()中指定fill = priors。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Sample 10000 draws from the Beta(1,1) prior
prior_B <- rbeta(n = ___, shape1 = ___, shape2 = ___)
# Sample 10000 draws from the Beta(100,100) prior
prior_C <- rbeta(n = ___, shape1 = ___, shape2 = ___)
# Combine the results in a single data frame
prior_sim <- data.frame(samples = c(prior_A, prior_B, prior_C),
priors = rep(c("A","B","C"), each = 10000))
# Plot the 3 priors
ggplot(___, aes(x = ___, fill = ___)) +
geom_density(alpha = 0.5)