Nel mio l'ultimo post del blog Ho iniziato l'analisi di dati di sondaggi fittizi riguardanti quale percentuale di persone ha intenzione di votare per il candidato A nelle prossime elezioni presidenziali. Adattando la distribuzione Beta Binomial, sono stato in grado di scoprire che la percentuale ( p ) di persone varia tra città e può essere modellato con la distribuzione Beta (27.64, 28.63). Questa distribuzione ha una media di 0,491. Ma questo non significa necessariamente che il candidato A otterrà il 49,1% del voto totale se combinato tra quelle città che ho campionato. Le città con una popolazione più alta hanno più peso quando viene totalizzato il voto popolare.
Se tutte le città hanno popolazioni quasi uguali, il totale dei voti popolari sarà intorno al 49,1%. Ma alcune città sono più grandi di altre nella realtà. Se i valori più piccoli di p provengono da città più grandi, quindi il risultato sarà inferiore al 49,1%. Se i valori più grandi di p provengono dalle città più grandi, quindi il risultato sarà superiore al 49,1%. Se l'intervallo di p è sparpagliato tra città piccole e grandi, quindi il risultato sarà probabilmente vicino al 49,1%.
Nel mio esempio fittizio, le popolazioni delle città che ho campionato sono incluse nel file Voting.com. Ho recuperato i dati da Wikipedia , ma la fonte originale è l'US Census Bureau. A proposito, è facile recuperare i dati da una pagina Web con JMP usando il Internet aperto comando nel menu File. Basta fornire l'URL e JMP importa tutti i dati tabulari che trova in quell'URL.
Come stimiamo la percentuale complessiva di voti per il candidato A per le 100 città che ho campionato? Utilizzare i risultati del sondaggio come stime della percentuale in una città, moltiplicare per la popolazione della città e quindi sommare le città per ottenere i totali complessivi. Ma non così velocemente - abbiamo bisogno di aggiustare i numeri della popolazione per tenere conto del fatto che non tutta la popolazione è in età di voto. Inoltre, non tutti i votanti hanno effettivamente voti, quindi è necessario un ulteriore adeguamento.
Di nuovo girando verso il Census Bureau , Ho trovato dati sulla proporzione di una popolazione che è in età di voto. I numeri variano da posizione a posizione. Invece di usare un numero (come la media) per riassumere tutte le proporzioni, mi adatto a una distribuzione. Poiché le proporzioni sono comprese tra 0 e 1, la distribuzione Beta è un ottimo candidato. Usando le capacità di adattamento della distribuzione di JMP, la distribuzione adattata risulta essere la Beta (397,126). Di seguito è riportato un grafico della distribuzione. La maggior parte è compresa tra 0,7 e 0,8, il che significa che per la maggior parte delle località la percentuale della popolazione in età di voto è 70% - 80%.

Ho anche trovato dati su quale percentuale di popolazione in età di voto effettivamente voti. Di nuovo adattando una distribuzione Beta, ottengo il Beta (30,32). Vedi il grafico qui sotto. La maggior parte è compresa tra 0,3 e 0,7, il che significa che per la maggior parte delle località la percentuale di una popolazione in età di voto che effettivamente vota è del 30% - 70%.

Sono un fan della simulazione di Monte Carlo. Quindi usiamo il linguaggio di scripting JMP per eseguire una simulazione. Lo script è allegato con i dati se si desidera provare da soli. Lo script è mostrato di seguito:

L'esecuzione della simulazione 10.000 volte (che richiede meno di 10 secondi) dà la seguente distribuzione per la proporzione del voto popolare che va al candidato A nelle 100 città.

La media della distribuzione è del 50,37%. Per una stima di intervallo, utilizzare il 2,5 ° e il 97,5 ° percentile. Stimo che il candidato A otterrà tra il 50,12% e il 50,61% del voto popolare per quelle 100 città che ho campionato.
Il 50% è nella coda inferiore della distribuzione. Qual è la probabilità che il candidato A ottenga almeno il 50% dei voti nelle 100 città? Possiamo adattare una distribuzione e stimare la probabilità. Se stai pensando che la distribuzione appaia normale, hai ragione. Richiama il teorema del limite centrale, che dice che la distribuzione di una media è asintoticamente normale, poiché aumenta il numero di elementi nella media. La proporzione complessiva è una media ponderata delle singole proporzioni della città; quindi è normale. Utilizzando una distribuzione normale con media = 0,5037 e stdev = 0,00124, la probabilità che il candidato A riceva almeno il 50% del voto nelle 100 città è del 99,85%. Questa è una buona notizia se ti piace il candidato A.
Ricorda che la distribuzione di p ha una media del 49,1%. Questo valore è più di 10 deviazioni standard al di sotto della media nei risultati della simulazione. In realtà, non è nemmeno mostrato sull'istogramma. Ciò significa che non vi è praticamente alcuna possibilità che il% complessivo del Candidato A sia inferiore al 49,1%. Questa sarebbe stata la media ipotizzando che le popolazioni fossero le stesse. Quindi, la contabilizzazione delle popolazioni cittadine ha certamente fatto la differenza quando si è passati attraverso le città. Forse non molto però, dal 50,3% al 49,1% = 1,2%.
Questo esempio è semplice e non tiene conto di una serie di fattori. Ad esempio, come gestisci le variazioni all'interno della città? Un diverso campione di persone potrebbe dare risultati diversi e le persone potrebbero cambiare idea tra oggi e il giorno delle elezioni. Una buona idea potrebbe essere quella di modellare la variazione all'interno della città con una distribuzione Beta. E che dire delle città con meno di 100.000 abitanti? È sicuro estrapolare questi risultati in città più piccole? E il collegio elettorale? Per una risposta interessante alla domanda del collegio elettorale, vedi questo articolo su cosa sta facendo un professore BYU per prevedere il risultato elettorale.
Cosa fa un fanatico di JMP per divertimento durante la stagione delle elezioni? Parte 1 - Blog JMP ha scritto:
[...] sintonizzato. Nel mio prossimo post, continuerò l'analisi e indirizzerò la popolazione [...]
Ryan ha scritto:
Ciao Jonathan,
Dato che sei un fan di Monte Carlo, hai uno script JSL che consente di inserire un coefficiente di correlazione, prima di eseguire la simulazione Monte Carlo, tra due variabili, per renderle correlate, in modo che il campionamento venga eseguito dal loro densità articolare?
Sono sorpreso che questa semplice simulazione MC non possa essere fatta facilmente tramite il sistema di menu in JMP. Sembra decisamente che sia un difetto di JMP.
Grazie,
Ryan- Kellyeng@cox.net