Simulace závislosti X na p
Ve své kandidatuře do veřejné funkce nechává tvůj volební tým provést průzkum mezi 10 pravděpodobnými voliči. Označme \(X\) počet těch, kteří tě podporují. Hodnota \(X\) se přirozeně liší vzorek od vzorku a závisí na \(p\) — tvé skutečné podpoře v širší populaci. Protože \(X\) je počet úspěchů v 10 nezávislých pokusech, každý s pravděpodobností úspěchu \(p\), můžeš závislost \(X\) na \(p\) modelovat binomickým rozdělením: Bin(10, \(p\)).
Binomický model budeš simulovat pomocí náhodných vzorků z funkce rbinom(n, size, prob). Tato vektorizovaná funkce generuje n vzorků z rozdělení Bin(size, prob). Pokud zadáš vektor hodnot prob, první hodnota prob se použije pro první tah, druhá pro druhý atd.
Toto cvičení je součástí kurzu
Bayesovské modelování s RJAGS
Pokyny k cvičení
- Definuj pomocí
seq()1000 možných hodnot \(p\) v rozsahu od 0 do 1. Ulož je jakop_grid. - Pomocí
rbinom()simuluj jeden výsledek průzkumu \(X\) pro každou z 1000 hodnot \(p\) vp_grid. Výsledky ulož dopoll_result. - Datový rámec
likelihood_simkombinujep_gridapoll_result. Pomocíggplot()a vrstvygeom_density_ridges()znázorni rozdělení hodnotp_grid(osax), ze kterých byl každý výsledekpoll_resultsimulován (osay).
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Define a vector of 1000 p values
p_grid <- seq(from = ___, to = ___, length.out = ___)
# Simulate 1 poll result for each p in p_grid
# Create likelihood_sim data frame
likelihood_sim <- data.frame(p_grid, poll_result)
# Density plots of p_grid grouped by poll_result
ggplot(likelihood_sim, aes(x = ___, y = ___, group = poll_result)) +
geom_density_ridges()