始める無料で始める

データへの条件付け(再び)

テキスト広告をテストしたゾンビサイトの例を振り返りましょう。テキスト広告を100回表示したところ、そのうち6人がクリックしてサイトを訪れました。

右側には、前の演習で作成したコードが示されています。pars は現在、proportion_clicksn_visitors のすべての組み合わせにわたる同時分布です。

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

RによるベイズデータAnalysisの基礎

コースを見る

演習の手順

  • データに条件付けを行い、pars の中から n_visitors == 6 の行だけを残しましょう。
  • pars$probability を再び正規化して、合計が 1.0 になるようにしましょう。
  • pars$proportion_clicks を x 軸、pars$probability を y 軸として、plot(x = , y = , type = "h") を使って事後分布 pars$probability をプロットしましょう。

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

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

n_ads_shown <- 100
proportion_clicks <- seq(0, 1, by = 0.01)
n_visitors <- seq(0, 100, by = 1)
pars <- expand.grid(proportion_clicks = proportion_clicks,
                    n_visitors = n_visitors)
pars$prior <- dunif(pars$proportion_clicks, min = 0, max = 0.2)
pars$likelihood <- dbinom(pars$n_visitors, 
    size = n_ads_shown, prob = pars$proportion_clicks)
pars$probability <- pars$likelihood * pars$prior
pars$probability <- pars$probability / sum(pars$probability)
# Condition on the data 
pars <- ___
# Normalize again
pars$probability <- ___
# Plot the posterior pars$probability
plot(___)
コードを編集して実行