Come utilizzare la distribuzione multinomiale in python


La distribuzione multinomiale descrive la probabilità di ottenere un numero specifico di conteggi per k risultati diversi, quando ciascun risultato ha una probabilità fissa di verificarsi.

Se una variabile casuale può essere trovata con la seguente formula:

Probabilità = n! * (p 1 x 1 * p 2 x 2 * … * p k x k ) / (x 1 ! * x 2 ! … * x k !)

Oro:

  • n: numero totale di eventi
  • x 1 : numero di volte in cui si verifica il risultato 1
  • p 1 : probabilità che si verifichi il risultato 1 in una data prova

Gli esempi seguenti mostrano come utilizzare la funzione scipy.stats.multinomial() in Python per rispondere a diverse domande di probabilità riguardanti la distribuzione multinomiale.

Esempio 1

In un’elezione a sindaco a tre, il candidato A riceve il 10% dei voti, il candidato B riceve il 40% dei voti e il candidato C riceve il 50% dei voti.

Se selezioniamo un campione casuale di 10 elettori, qual è la probabilità che 2 abbiano votato per il candidato A, 4 abbiano votato per il candidato B e 4 abbiano votato per il candidato C?

Possiamo usare il seguente codice in Python per rispondere a questa domanda:

 from scipy. stats import multinomial

#calculate multinomial probability
multinomial. pmf (x=[2, 4, 4], n=10, p=[.1, .4, .5])

0.05040000000000001

La probabilità che esattamente 2 persone abbiano votato per A, 4 per B e 4 per C è 0,0504 .

Esempio 2

Supponiamo che un’urna contenga 6 biglie gialle, 2 biglie rosse e 2 biglie rosa.

Se estraiamo a caso 4 palline dall’urna, con reinserimento, qual è la probabilità che tutte e 4 le palline siano gialle?

Possiamo usare il seguente codice in Python per rispondere a questa domanda:

 from scipy. stats import multinomial

#calculate multinomial probability
multinomial. pmf (x=[4, 0, 0], n=4, p=[.6, .2, .2])

0.1295999999999999

La probabilità che tutte e 4 le palline siano gialle è circa 0,1296 .

Esempio 3

Supponiamo che due studenti stiano giocando a scacchi l’uno contro l’altro. La probabilità che lo studente A vinca un dato gioco è 0,5, la probabilità che lo studente B vinca un dato gioco è 0,3 e la probabilità che ci sia un pareggio in un dato gioco è 0,2.

Se giocano 10 partite, qual è la probabilità che il giocatore A vinca 4 volte, il giocatore B vinca 5 volte e che pareggia 1 volta?

Possiamo usare il seguente codice in Python per rispondere a questa domanda:

 from scipy. stats import multinomial

#calculate multinomial probability
multinomial. pmf (x=[4, 5, 1], n=10, p=[.5, .3, .2])

0.03827249999999997

La probabilità che il giocatore A vinca 4 volte, il giocatore B vinca 5 volte e che pareggia 1 volta è di circa 0,038 .

Risorse addizionali

Le seguenti esercitazioni forniscono informazioni aggiuntive sulla distribuzione multinomiale:

Un’introduzione alla distribuzione multinomiale
Calcolatore della distribuzione multinomiale
Cos’è un test multinomiale? (Definizione ed esempio)

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *