fornaeffe / elezioni

Simulatore per le elezioni politiche
GNU General Public License v3.0
3 stars 0 forks source link

Dati Input #1

Open Pasquic opened 2 years ago

Pasquic commented 2 years ago

Ciao, intanto complimenti per il lavoro che hai svolto! Volevo chiederti alcune delucidazioni, se possibile: non riesco a capire quali sono i dati di input, se sono stimati a macro aree o a partire dai singoli collegi uninominali, poiché spulciando tra i file onestamente non son riuscito a trovare una risposta. In ogni casi, un suggerimento potrebbe essere quello di confrontare i dati reali delle elezioni 2018/2019 e regionali con i sondaggi di allora, e farne una proporzione in termini di voti partendo dagli attuali sondaggi.

fornaeffe commented 2 years ago

Ciao, hai ragione, per ora ho scritto il codice soprattutto per me senza troppa attenzione a che sia chiaro e comprensibile da parte di altri.

Il procedimento in estrema sintesi:

  1. Prendo le percentuali nazionali di un sondaggio e calcolo i voti nazionali di ogni partito
  2. Raggruppo i partiti in "aree politiche" (preferirei evitare ma non sempre trovo lo stesso partito in tutte le tornate elettorali)
  3. Distribuisco nei diversi collegi uninominali il totale di voti nazionale di quella area, in base a come erano distribuiti i voti della stessa area nelle scorse elezioni politiche, regionali ed europee
  4. Suddivido nuovamente i voti di ogni area in ogni collegio nei diversi partiti, rispettando le proporzioni nazionali all'interno di ogni area.
  5. In ognuna delle iterazioni simulazioni faccio variare un poco la percentuale.

Il procedimento un po' più in dettaglio

Dati di input:

  1. Carico i voti delle precedenti elezioni (politiche 2018, europee 2019, regionali dal 2018 a oggi)
  2. Assegno a ciascuna lista di queste elezioni una area, come indicato nel file "dati_2023/liste.xlsx"
  3. Sommo i voti di ciascuna area per ciascuna provincia
  4. Calcolo la percentuale di ciascuna area in ciascuna provincia
  5. Moltiplico questa percentuale per la popolazione della provincia, in modo da avere una stima di quanta parte della popolazione appartiene a quell'area politica
  6. Per ogni area politica, sommo per tutte le province la popolazione appartentente all'area politica calcolata al punto 5, in modo da ottenere la popolazione appartenente a quell'area a livello nazionale
  7. Per ogni area politica e per ogni provincia, divido la popolazione di quell'area politica di quella provincia per la popolazione nazionale di quell'area politica, in modo da ottenere la frazione di popolazione nazionale dell'area politica presente in quella provincia
  8. Carico il file dello scenario, con le percentuali previste a livello nazionale per le prossime elezioni
  9. Sommo insieme le percentuali dei partiti della stessa area, ottenendo la percentuale di area
  10. Moltiplico la percentuale di area per la popolazione, in modo da avere, per ogni area e a livello nazionale, la popolazione che, secondo i sondaggi, è orientata verso quell'area politica
  11. Suddivido questa popolazione tra le varie provincie secondo le frazioni calcolate al punto 7
  12. Per ogni provincia, calcolo la percentuale prevista di ogni area politica, dividendo la popolazione di ogni area politica nella provincia, calcolata al punto 11, per il totale
  13. Suddivido la popolazione di ogni comune della provincia nelle diverse aree secondo le percentuali calcolate al punto 12
  14. Per ogni collegio uninominale, separatamente per Camera e Senato, sommo insieme la popolazione di ciascuna area in ciascun comune, calcolata al punto precedente
  15. Per ogni collegio uninominale, suddivido la popolazione di ciascuna area nelle diverse liste dell'area, secondo la proporzione tra le percentuali nazionali previste delle liste dell'area.
  16. Per ogni collegio uninominale calcolo la percentuale di lista, dividendo la popolazione di lista calcolata al punto 15 per il totale
  17. Eseguo un certo numero (specificato nella variabile iterazioni) di simulazioni, in ciascuna di esse lascio che le percentuali calcolate al punto 16 varino leggermente (in particolare, faccio il logaritmo delle percentuali, lo faccio variare secondo una distribuzione normale con deviazione standard specificata nella variabile variab, dopodiché riporto questi valori a percentuali tramite la funzione softmax).

Puoi trovare una descrizione del procedimento anche nel file "elezioni.Rmd" a partire dalla riga 858, oppure nell'output che viene generato.

Se ci sono punti ancora poco chiari dimmi pure.

fornaeffe commented 2 years ago

In ogni casi, un suggerimento potrebbe essere quello di confrontare i dati reali delle elezioni 2018/2019 e regionali con i sondaggi di allora, e farne una proporzione in termini di voti partendo dagli attuali sondaggi.

Potrebbe essere un'idea interessante. Non so se avrò il tempo di implementarla entro le prossime elezioni, ma se qualcun altro vuole lavorarci sopra, volentieri.

ruggsea commented 1 year ago

Arrivo un po' in ritardo ma vorrei suggerire che aggiustare i sondaggi con l'errore storico dei sondaggi è teoreticamente sbagliato e non dovrebbe migliorare l'accuratezza della previsione. (https://gelliottmorris.substack.com/p/the-polling-website-where-republicans)

fornaeffe commented 1 year ago

Ti ringrazio per il contributo! Leggendo l'articolo però direi che aggiustare i sondaggi con l'errore storico dei sondaggi non è teoricamente sbagliato in assoluto, semplicemente non ha senso farlo nel modo e nel contesto in cui lo ha fatto RCP. Può avere senso se, ad esempio, gli elettori di destra rispondono meno volentieri ai sondaggi degli elettori di sinistra. In quel caso i sondaggi saranno sempre un po' sbilanciati verso sinistra rispetto al risultato delle elezioni, e può avere senso stimare l'errore sistematico attraverso la media di un adeguato numero di differenze tra risultato delle elezioni e sondaggi. Nell'articolo l'autore evidenzia che non è il caso delle elezioni americane, e per questo motivo critica il fatto che RCP abbia comunque scelto di correggere i sondaggi (tra l'altro considerando un ridottissimo numero di precedenti elezioni).

Ad ogni modo, non l'ho fatto nell'elaborazione dello scorso anno, e dubito che avrò mai il tempo e la voglia per provare a implementarlo in futuro. Se qualcuno volesse cimentarsi, lascio a lui il compito di decidere quale procedimento sia formalmente corretto.