So verwenden sie die binomialverteilung in python


Die Binomialverteilung ist eine der am häufigsten verwendeten Verteilungen in der Statistik. Sie beschreibt die Wahrscheinlichkeit, in n Binomialexperimenten k Erfolge zu erzielen.

Wenn eine Zufallsvariable X einer Binomialverteilung folgt, kann die Erfolgswahrscheinlichkeit von X = k mit der folgenden Formel ermittelt werden:

P(X=k) = n C k * p k * (1-p) nk

Gold:

  • n: Anzahl der Versuche
  • k: Anzahl der Erfolge
  • p: Erfolgswahrscheinlichkeit bei einem bestimmten Versuch
  • n C k : die Anzahl der Möglichkeiten, in n Versuchen k Erfolge zu erzielen

In diesem Tutorial wird erklärt, wie Sie die Binomialverteilung in Python verwenden.

So generieren Sie eine Binomialverteilung

Mit der Funktion random.binomial der Numpy-Bibliothek können Sie ein Wertearray generieren, das einer Binomialverteilung folgt:

 from numpy import random

#generate an array of 10 values that follows a binomial distribution
random.binomial(n=10, p=.25, size=10)

array([5, 2, 1, 3, 3, 3, 2, 2, 1, 4])

Jede Zahl in der resultierenden Tabelle stellt die Anzahl der „Erfolge“ dar, die im Verlauf von 10 Versuchen erzielt wurden, wobei die Erfolgswahrscheinlichkeit in einem bestimmten Versuch 0,25 betrug.

So berechnen Sie Wahrscheinlichkeiten mithilfe einer Binomialverteilung

Sie können Fragen zur Binomialwahrscheinlichkeit auch mit der Binomfunktion der Scipy-Bibliothek beantworten.

Frage 1: Nathan macht 60 % seiner Freiwurfversuche. Wenn er 12 Freiwürfe macht, wie groß ist dann die Wahrscheinlichkeit, dass er genau 10 macht?

 from scipy.stats import binom

#calculate binomial probability
binom.pmf(k= 10 , n= 12 , p= 0.6 )

0.0639

Die Wahrscheinlichkeit, dass Nathan genau 10 Freiwürfe macht, beträgt 0,0639 .

Frage 2: Marty wirft fünfmal eine faire Münze. Wie groß ist die Wahrscheinlichkeit, dass die Münze zweimal oder weniger „Kopf“ erscheint?

 from scipy.stats import binom

#calculate binomial probability
binom.cdf(k= 2 , n= 5 , p= 0.5 )

0.5

Die Wahrscheinlichkeit, dass die Münze zweimal oder weniger „Kopf“ zeigt, beträgt 0,5 .

Frage 3: Wir wissen, dass 70 % der Menschen ein bestimmtes Gesetz unterstützen. Wenn 10 Personen zufällig ausgewählt werden, wie groß ist die Wahrscheinlichkeit, dass zwischen 4 und 6 von ihnen das Gesetz unterstützen?

 from scipy.stats import binom

#calculate binomial probability
binom.cdf(k= 6 , n= 10 , p= 0.7 ) - binom.cdf(k= 3 , n= 10 , p= 0.7 )

0.3398

Die Wahrscheinlichkeit, dass zwischen 4 und 6 zufällig ausgewählte Personen das Gesetz unterstützen, beträgt 0,3398 .

So visualisieren Sie eine Binomialverteilung

Sie können eine Binomialverteilung in Python mit den Bibliotheken seaborn und matplotlib visualisieren:

 from numpy import random
import matplotlib.pyplot as plt
import seaborn as sns

x = random.binomial(n= 10 , p= 0.5 , size= 1000 )

sns.distplot(x, hist= True , kde= False )

plt.show()

Binomialverteilungsdiagramm in Python

Tee

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert