IniziaInizia gratis

Simulare la dipendenza di X da p

Nel tuo percorso verso l’elezione a una carica pubblica, la tua campagna intervista 10 elettori probabili. Sia \(X\) il numero di persone che ti sostengono. Naturalmente, \(X\) varia da campione a campione e dipende da \(p\), il tuo sostegno nella popolazione più ampia. Poiché \(X\) è un conteggio di successi in 10 prove indipendenti, ciascuna con probabilità di successo \(p\), puoi modellarne la dipendenza da \(p\) con la distribuzione Binomiale: Bin(10, \(p\)).

Simulerai il modello Binomiale usando campioni casuali con la funzione rbinom(n, size, prob). Questa funzione vettorializzata estrae n campioni da una distribuzione Bin(size, prob). Fornendo un vettore di valori prob, il primo valore di prob verrà usato per la prima estrazione, il secondo per la seconda, e così via.

Questo esercizio fa parte del corso

Modeling bayesiano con RJAGS

Visualizza il corso

Istruzioni dell'esercizio

  • Definisci una seq() di 1000 possibili valori di \(p\) da 0 a 1. Salvala come p_grid.
  • Usa rbinom() per simulare un risultato del sondaggio \(X\) per ciascuno dei 1000 \(p\) in p_grid. Assegna i risultati a poll_result.
  • Il data frame likelihood_sim combina p_grid e poll_result. Usa ggplot() con un layer geom_density_ridges() per mostrare la distribuzione dei valori di p_grid (asse x) da cui è stato simulato ciascun poll_result (asse y).

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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()
Modifica ed esegui il codice