De afhankelijkheid van X van p simuleren
In je poging om in een openbaar ambt gekozen te worden, peilt je campagne 10 waarschijnlijke kiezers. Laat \(X\) het aantal zijn dat jou steunt. Natuurlijk varieert \(X\) van steekproef tot steekproef en hangt het af van \(p\), je onderliggende steun in de bredere bevolking. Omdat \(X\) het aantal successen telt in 10 onafhankelijke pogingen, elk met succeskans \(p\), kun je de afhankelijkheid van \(p\) modelleren met de Binomiale verdeling: Bin(10, \(p\)).
Je gaat het Binomiale model simuleren met willekeurige steekproeven uit de functie rbinom(n, size, prob). Deze gevectoriseerde functie trekt n steekproeven uit een Bin(size, prob) verdeling. Gegeven een vector met prob-waarden, wordt de eerste prob-waarde gebruikt voor de eerste trekking, de tweede prob-waarde voor de tweede trekking, enzovoort.
Deze oefening maakt deel uit van de cursus
Bayesiaans modelleren met RJAGS
Oefeninstructies
- Definieer een
seq()van 1000 mogelijke waarden van \(p\) tussen 0 en 1. Sla deze op alsp_grid. - Gebruik
rbinom()om één peilingresultaat \(X\) te simuleren voor elk van de 1000 $p$’s inp_grid. Ken deze toe aanpoll_result. - Het
likelihood_sim-dataframe combineertp_gridenpoll_result. Gebruikggplot()met eengeom_density_ridges()-laag om de verdeling vanp_grid-waarden (x-as) te laten zien waaruit elkpoll_resultis gesimuleerd (y-as).
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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()