शुरू करेंमुफ़्त में शुरू करें

एक सशर्त शॉर्टकट

बहुत बढ़िया, आपने अब बिना किसी सिम्युलेशन के कुछ Bayesian computation कर लिया! जो प्लॉट आपने बनाया है, वह अध्याय 3 में निकाली गई posterior distribution जैसा ही होना चाहिए। हालाँकि, आप देख सकते हैं कि इसके लिए काफ़ी ज़्यादा कोड लिखना पड़ा। क्या इसमें कुछ घटाया जा सकता है?

हाँ, बिल्कुल! आप सीधे डेटा पर condition कर सकते हैं, पहले joint distribution बनाने की ज़रूरत नहीं है।

यह अभ्यास पाठ्यक्रम का हिस्सा है

R में Bayesian डेटा विश्लेषण की बुनियाद

पाठ्यक्रम देखें

अभ्यास निर्देश

  • n_visitors को सीधे 6 पर सेट करें, seq-स्टेटमेंट को ही बदल दें।
  • अब आप डेटा पर कंडीशन करने वाली लाइन, और उसके बाद वाली लाइन जो pars$probability को normalize करती है, हटा सकते हैं।
  • अंतिम कोड को एक बार और ध्यान से देखें और खुद आश्वस्त हों कि इस संशोधित कोड का परिणाम पहले जैसा ही होगा. :)

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Simplify the code below by directly conditioning on the data
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)
pars <- pars[pars$n_visitors == 6, ]
pars$probability <- pars$probability / sum(pars$probability)
plot(pars$proportion_clicks, pars$probability, type = "h")
कोड संपादित करें और चलाएँ