So berechnen sie konfidenzintervalle in python
Ein Konfidenzintervall für einen Mittelwert ist ein Wertebereich, der wahrscheinlich einen Populationsmittelwert mit einem bestimmten Konfidenzniveau enthält.
Es wird wie folgt berechnet:
Konfidenzintervall = x +/- t*(s/√n)
Gold:
- x : Stichprobenmittelwert
- t: t-Wert, der dem Konfidenzniveau entspricht
- s: Stichprobenstandardabweichung
- n: Stichprobengröße
In diesem Tutorial wird erklärt, wie man Konfidenzintervalle in Python berechnet.
Konfidenzintervalle unter Verwendung der t-Verteilung
Wenn wir mit einer kleinen Stichprobe (n < 30) arbeiten, können wir die Funktion t.interval() aus der Bibliothek scipy.stats verwenden, um ein Konfidenzintervall für einen Populationsmittelwert zu berechnen.
Das folgende Beispiel zeigt, wie ein Konfidenzintervall für die tatsächliche durchschnittliche Populationshöhe (in Zoll) einer bestimmten Pflanzenart anhand einer Stichprobe von 15 Pflanzen berechnet wird:
import numpy as np import scipy.stats as st #define sample data data = [12, 12, 13, 13, 15, 16, 17, 22, 23, 25, 26, 27, 28, 28, 29] #create 95% confidence interval for population mean weight st.t.interval(alpha=0.95, df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) (16.758, 24.042)
Das 95 %-Konfidenzintervall für die tatsächliche mittlere Bevölkerungsgröße beträgt (16,758, 24,042) .
Sie werden feststellen, dass das Konfidenzintervall umso größer ist, je höher das Konfidenzniveau ist. So berechnen Sie beispielsweise ein 99 %-KI für genau dieselben Daten:
#create 99% confidence interval for same sample st.t.interval(alpha= 0.99 , df=len(data)-1, loc=np.mean(data), scale=st.sem(data)) (15.348, 25.455)
Das 99 %-Konfidenzintervall für die tatsächliche mittlere Bevölkerungsgröße beträgt (15,348, 25,455) . Beachten Sie, dass dieses Intervall breiter ist als das vorherige 95 %-Konfidenzintervall.
Konfidenzintervalle unter Verwendung der Normalverteilung
Wenn wir mit größeren Stichproben (n≥30) arbeiten, können wir davon ausgehen, dass die Stichprobenverteilung des Stichprobenmittelwerts normalverteilt ist (dank des zentralen Grenzwertsatzes ) und können stattdessen die Normfunktion verwenden. Interval() aus der scipy .stats-Bibliothek.
Das folgende Beispiel zeigt, wie ein Konfidenzintervall für die tatsächliche durchschnittliche Populationshöhe (in Zoll) einer bestimmten Pflanzenart anhand einer Stichprobe von 50 Pflanzen berechnet wird:
import numpy as np import scipy.stats as st #define sample data np.random.seed(0) data = np.random.randint(10, 30, 50) #create 95% confidence interval for population mean weight st.norm.interval(alpha=0.95, loc=np.mean(data), scale=st.sem(data)) (17.40, 21.08)
Das 95 %-Konfidenzintervall für die tatsächliche mittlere Bevölkerungsgröße beträgt (17,40, 21,08) .
Und wie bei der t-Verteilung führen höhere Konfidenzniveaus zu größeren Konfidenzintervallen. So berechnen Sie beispielsweise ein 99 %-KI für genau dieselben Daten:
#create 99% confidence interval for same sample st.norm.interval(alpha= 0.99 , loc=np.mean(data), scale=st.sem(data)) (16.82, 21.66)
Das 95 %-Konfidenzintervall für die tatsächliche mittlere Bevölkerungsgröße beträgt (17,82, 21,66) .
So interpretieren Sie Konfidenzintervalle
Nehmen wir an, dass unser 95 %-Konfidenzintervall für die tatsächliche durchschnittliche Höhe einer Pflanzenart wie folgt lautet:
95 %-Konfidenzintervall = (16,758, 24,042)
Dieses Konfidenzintervall lässt sich wie folgt interpretieren:
Es besteht eine Wahrscheinlichkeit von 95 %, dass das Konfidenzintervall von [16,758, 24,042] die wahre mittlere Pflanzenhöhe der Population enthält.
Anders ausgedrückt: Es besteht nur eine 5-prozentige Wahrscheinlichkeit, dass der wahre Mittelwert der Grundgesamtheit außerhalb des 95-Prozent-Konfidenzintervalls liegt. Das heißt, die Wahrscheinlichkeit, dass die tatsächliche durchschnittliche Pflanzenhöhe weniger als 16,758 Zoll oder mehr als 24,042 Zoll beträgt, beträgt nur 5 %.