始める無料で始める

ベータ事前分布の比較と対比

Beta(\(a\),\(b\)) 分布は 0 から 1 の区間で定義されるため、選挙支持率 \(p\) の事前分布として自然かつ柔軟なモデルとなります。形状パラメータ \(a\) と \(b\) を調整することで、さまざまな事前分布モデルを作成できます。ここでは、元の Beta(45,55) 事前分布を Beta(1, 1) および Beta(100, 100) の 2 つの代替案と比較しましょう。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_Aprior_Bprior_Csamples と、対応する priors の識別子がまとめられています。これら 3 つの事前分布の samples を同じフレーム上に密度プロットで表示するには、ggplot()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)
コードを編集して実行