Aan de slagGa gratis aan de slag

Nationale verkiezingen

Deze oefening laat je proeven van hoe je een DGP op verschillende niveaus van complexiteit kunt modelleren.

Stel nationale verkiezingen voor in een land met twee politieke partijen: Rood en Blauw. Dit land heeft 50 staten en de partij die de meeste staten wint, wint de verkiezingen. Je hebt de kans \(p\) dat Rood in elke afzonderlijke staat wint en je wilt weten wat de kans is dat Rood nationaal wint.

Laten we de DGP modelleren om de verdeling te begrijpen. Stel dat de verkiezingsuitkomst in elke staat een binomiale verdeling volgt met kans \(p\), waarbij \(0\) een verlies voor Rood aangeeft en \(1\) een winst. We simuleren vervolgens een aantal verkiezingsuitkomsten. Tot slot kunnen we rijke vragen stellen zoals: wat is de kans dat Rood minder dan 45% van de staten wint?

Deze oefening maakt deel uit van de cursus

Statisticale simulatie in Python

Cursus bekijken

Oefeninstructies

  • Simuleer één verkiezing met np.random.binomial() met p = probs en n=1. Ken dit toe aan election.
  • Voeg het gemiddelde van Roods overwinningen in election toe aan outcomes.
  • Bereken het aandeel van outcomes waarin Rood minder dan 45% van de staten won. Sla dit op als prob_red_wins en gebruik het om je resultaten te printen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

outcomes, sims, probs = [], 1000, p

for _ in range(sims):
    # Simulate elections in the 50 states
    election = ____
    # Get average of Red wins and add to `outcomes`
    outcomes.append(____)

# Calculate probability of Red winning in less than 45% of the states
prob_red_wins = ____
print("Probability of Red winning in less than 45% of the states = {}".format(____))
Code bewerken en uitvoeren