Razumevanje intervalov zaupanja s Pythonom

Izvorno vozlišče: 1883080

Ta članek je bil objavljen kot del Blogathon o znanosti o podatkih.

Kazalo

  1. Predstavitev
  2. Intervali zaupanja z Z-statistiko
  3. Razlaga intervalov zaupanja
  4. Predpostavke za CI z uporabo z-statistike
  5. Intervali zaupanja s t-statistiko
  6. Predpostavke za CI z uporabo t-statistike
  7. Izdelava t-intervala s seznanjenimi podatki
  8. z-vrednost proti t-vrednosti: kdaj uporabiti kaj?
  9. Intervali zaupanja s pythonom
  10. Končna opomba

Predstavitev

Kadarkoli rešujemo statistični problem, nas skrbi ocena populacijskih parametrov, vendar je pogosteje skoraj nemogoče izračunati populacijske parametre. Namesto tega vzamemo naključne vzorce iz populacije in izračunamo vzorčno statistiko, pri čemer pričakujemo približne parametre populacije. Toda kako vemo, ali so vzorci resnični predstavniki populacije oziroma koliko ti vzorčni statistični podatki odstopajo od populacijskih parametrov? Tu nastopijo intervali zaupanja. Kakšni so torej ti intervali? Interval zaupanja je obseg vrednosti, ki segajo nad in pod vzorčno statistiko, lahko pa ga definiramo tudi kot verjetnost, da obseg vrednosti okoli vzorčne statistike vsebuje pravi parameter populacije.

Intervali zaupanja z Z-statistiko

Preden se poglobimo v temo, se seznanimo z nekaj statistične terminologije.

prebivalstvo: Je množica vseh podobnih posameznikov. Na primer prebivalstvo mesta, študenti fakultete itd.

Vzorec: Gre za majhen nabor podobnih posameznikov iz populacije. Podobno je naključni vzorec vzorec, naključno vzet iz populacije.

parametri: povprečje (mu), standardni odkloni (sigma), razmerje (p), izpeljano iz populacije.

statistika: povprečje (x bar), standardno odstopanje (S), razmerja (p^), ki zadevajo vzorce.

Z-rezultat: je razdalja katere koli neobdelane podatkovne točke na normalni porazdelitvi od povprečja, normaliziranega s std deviacijo. Dobiti od: x-mu/sigma

Zdaj smo pripravljeni, da se poglobimo v koncept intervalov zaupanja. Iz neznanega razloga verjamem, da je veliko bolje pojme razumeti s primeri, ki jih je mogoče povezati, namesto s surovimi matematičnimi definicijami. Pa začnimo.

Recimo, da živite v mestu s 100,000 prebivalci in so volitve za vogalom. Kot anketar moraš napovedati, kdo bo zmagal na volitvah bodisi modra ali rumena stranka. Vidite torej, da je skoraj nemogoče zbrati informacije od celotne populacije, zato naključno izberete 100 ljudi. Na koncu ankete ste ugotovili, da bo 62 % ljudi volilo rumeno. Zdaj se postavlja vprašanje, ali naj sklepamo, da bo rumena zmagala z verjetnostjo zmage 62 % ali bo 62 % celotne populacije glasovalo za rumeno? No, odgovor je NE. Ne vemo zagotovo, kako daleč je naša ocena od pravega parametra, če vzamemo še en vzorec, se lahko izkaže, da je rezultat 58% ali 65%. Namesto tega bomo poiskali razpon vrednosti okoli naše vzorčne statistike, ki bo najverjetneje zajela pravi delež populacije. Tukaj se delež nanaša na odstotek

Intervali zaupanja s Pythonom

                                                                   slika pripada avtorju

Zdaj, če vzamemo sto takih vzorcev in narišemo vzorčni delež vsakega vzorca, bomo dobili normalno porazdelitev vzorčnih deležev in povprečje porazdelitve bo najbolj približna vrednost deleža populacije. In naša ocena bi lahko ležala kjer koli na distribucijski krivulji. Glede na pravilo 3-sigma vemo, da je okoli 95 % naključnih spremenljivk znotraj 2 standardnih odstopanj od povprečja porazdelitve. Torej lahko sklepamo, da je verjetnost, da p^ je znotraj 2 standardnih odstopanj od p je 95 %. Lahko pa trdimo tudi, da je verjetnost, da je p znotraj 2 std odstopanj pod in nad p^ prav tako 95 %. Ti dve izjavi sta dejansko enakovredni. Ti dve točki pod in nad p^ sta naša intervala zaupanja.

Intervali zaupanja s Pythonom

                                                           slika pripada avtorju

Če lahko nekako najdemo sigmo, lahko izračunamo zahtevani interval. Toda sigma je tukaj parameter populacije in vemo, da je pogosto skoraj nemogoče izračunati, zato bomo namesto tega uporabili vzorčno statistiko, tj. standardno napako. To je podano kot

kjer je p^ = delež vzorca, n = število vzorcev

SE =√(0.62 . 0.38/100) = 0.05

torej, 2xSE = 0.1

Interval zaupanja za naše podatke je (0.62-0.1,0.62+0.1) ali (0.52,0.72). Ker smo vzeli 2xSE, to pomeni 95-odstotni interval zaupanja.

Vprašanje je, kaj če želimo ustvariti 92-odstotni interval zaupanja? V prejšnjem primeru smo 2 pomnožili s SE, da smo izdelali 95-odstotni interval zaupanja, ta 2 je rezultat z za 95-odstotni interval zaupanja (natančna vrednost je 1.96) in to vrednost je mogoče najti iz z-tabele. Kritična vrednost z za 92-odstotni interval zaupanja je 1.75. Nanašati se na ta članek za boljše razumevanje z-rezultata in z-tabele.

Interval je podan z: (p^ + z*.SE , p^-z*.SE).

Če je namesto vzorčnega deleža podano vzorčno povprečje, bo standardna napaka sigma/sqrt(n). Tukaj je sigma je populacijski std odklon, ker ga pogosto nimamo, namesto tega uporabljamo vzorčni std odklon. Vendar se pogosto opazi, da je tovrstna ocena, pri kateri je podana povprečna vrednost rezultat, nekoliko pristranska. Torej je v takšnih primerih bolje uporabiti t-statistiko namesto z-statistike.

Splošna formula za interval zaupanja z z-statistiko je podana z

Tu se statistika nanaša bodisi na vzorčno povprečje bodisi na vzorčni delež. sigmas so populacijski standardni odklon.

Razlaga intervalov zaupanja

Zelo pomembno je pravilno razlagati intervale zaupanja. Razmislite o prejšnjem primeru anketarja, kjer smo izračunali, da je naš 95-odstotni interval zaupanja (0.52,0.62). Kaj to pomeni? No, 95-odstotni interval zaupanja pomeni, da če vzamemo n vzorcev iz populacije, bo 95 % časa izpeljani interval vseboval pravi delež populacije. Ne pozabite, da 95-odstotni interval zaupanja ne pomeni, da obstaja 95-odstotna verjetnost, da interval vsebuje pravi delež populacije. Na primer, za 90-odstotni interval zaupanja, če vzamemo 10 vzorcev iz populacije, bo 9 od 10-krat omenjenega intervala vsebovalo pravi parameter populacije. Za boljše razumevanje si oglejte spodnjo sliko.

Razlaga intervala zaupanja

                                                            slika pripada avtorju

Predpostavke za intervale zaupanja z uporabo Z-statistike

Za sestavo veljavnega intervala zaupanja z uporabo z-statistike moramo iskati določene predpostavke.

  1. Naključni vzorec: Vzorci morajo biti naključni. Za pridobitev naključnih vzorcev obstajajo različne metode vzorčenja, kot so stratificirano vzorčenje, preprosto naključno vzorčenje, vzorčenje v skupine.
  2. Normalni pogoj: podatki morajo izpolnjevati ta pogoj np^>=10 in n.(1-p^)>=10. To v bistvu pomeni, da mora biti naša vzorčna porazdelitev vzorčnih povprečij normalna, ne poševna na nobeni strani.
  3. Neodvisno: vzorci morajo biti neodvisni. Število vzorcev mora biti manjše ali enako 10 % celotne populacije ali če se vzorčenje izvaja z zamenjavo.

Intervali zaupanja s T-statistiko

Kaj pa, če je velikost vzorca relativno majhna in standardni odklon populacije ni podan ali ga ni mogoče domnevati? Kako zgradimo interval zaupanja? no, tu nastopi t-statistika. Osnovna formula za iskanje intervala zaupanja tukaj ostaja enaka, le da je z* zamenjan s t*. Splošna formula je podana z

kjer je S = standardni odklon vzorca, n = število vzorcev

Recimo, da ste gostili zabavo in želite oceniti povprečno porabo piva vaših gostov. Torej, pridobite naključni vzorec 20 posameznikov in izmerite porabo piva. Podatki o vzorcu so simetrični s srednjo vrednostjo 0f 1200 ml in standardnim odklonom 120 ml. Torej, zdaj želite zgraditi 95-odstotni interval zaupanja.

Torej imamo standardno odstopanje vzorca, število vzorcev in povprečje vzorca. Vse kar potrebujemo je t*. Torej je t* za 95-odstotni interval zaupanja s prostostno stopnjo 19 (n-1 = 20-1) 2.093. Torej je naš zahtevani interval po izračunu (1256.16, 1143.83) z mejo napake 56.16. Nanašati se na ta video, da boste vedeli, kako brati t-tabelo.

Predpostavke za CI z uporabo T-statistike

Podobno kot v primeru z-statistike tudi v primeru t-statistike obstajajo nekateri pogoji, na katere moramo biti pozorni pri danih podatkih.

  1. Vzorec mora biti naključen
  2. Vzorec mora biti normalen. Da bi bil vzorec normalen, mora biti velikost vzorca večja ali enaka 30 ali če je nadrejeni nabor podatkov, tj. populacija, približno normalen. Če pa je velikost vzorca manjša od 30, mora biti porazdelitev približno simetrična.
  3. Posamezna opazovanja morajo biti neodvisna. To pomeni, da sledi pravilu 10 % ali pa se vzorčenje izvede z zamenjavo.

Izdelava T-intervala za seznanjene podatke

Do sedaj smo uporabljali le podatke enega vzorca. Zdaj bomo videli, kako lahko sestavimo t-interval za seznanjene podatke. Pri seznanjenih podatkih naredimo dve opazki istega posameznika. Na primer primerjava ocen študentov pred in po testu ali podatkov o vplivu zdravila in placeba na skupino oseb. V seznanjenih podatkih smo ugotovili razliko med obema opazovanjima v 3. stolpcu. Kot običajno bomo šli skozi primer, da bi razumeli tudi ta koncept,

V. Učitelj je poskušal ovrednotiti učinek novega učnega načrta na rezultat testa. Spodaj so rezultati opazovanj.

T interval za seznanjene podatke

                                                      slika pripada avtorju

Ker nameravamo najti intervale za srednjo razliko, potrebujemo samo statistiko za razlike. Uporabili bomo isto formulo, kot smo jo uporabili prej

statistika +- (kritična vrednost ali t-vrednost) (standardni odklon statistike)

xd = povprečje razlike, Sd = standardno odstopanje vzorca za 95 % IZ s prostostno stopnjo 5 t* je podano z 2.57. Meja napake = 0.97 in interval zaupanja (4.18,6.13).

Razlaga: Iz zgornjih ocen, kot lahko vidimo, interval zaupanja ne vsebuje ničelnih ali negativnih vrednosti. Tako lahko sklepamo, da je novi učni načrt pozitivno vplival na testne uspehe učencev. Če bi imel samo negativne vrednosti, bi lahko rekli, da je imel učni načrt negativen vpliv. Če pa bi vseboval nič, bi lahko obstajala možnost, da je bila razlika enaka nič ali da učni načrt ni vplival na rezultate testa.

Z-vrednost proti T-vrednosti

Na začetku je veliko zmede o tem, kdaj kaj uporabiti. Osnovno pravilo je, da je velikost vzorca >= 30 in je znano, da standardni odklon populacije uporablja z-statistiko. V primeru, da je velikost vzorca < 30, uporabite t-statistiko. V resničnem življenju nimamo populacijskih parametrov, zato bomo uporabili z ali t glede na velikost vzorca.

Pri manjših vzorcih (n<30) osrednji mejni izrek ne velja, uporablja pa se druga porazdelitev, imenovana Studentova t-porazdelitev. T-porazdelitev je podobna običajni porazdelitvi, vendar ima različne oblike, odvisno od velikosti vzorca. Namesto vrednosti z se uporabljajo vrednosti t, ki so večje za manjše vzorce, kar povzroči večjo mejo napake. Ker bo majhen vzorec manj natančen.

Intervali zaupanja s Pythonom

Python ima obsežno knjižnico, ki podpira vse vrste statističnih izračunov, ki nam olajšajo življenje. V tem delu si bomo ogledali podatke o spalnih navadah malčkov. 20 udeležencev teh opazovanj je bilo zdravih, obnašali so se normalno in niso imeli motenj spanja. Naš cilj je analizirati čas spanja dremajočih in nedremajočih malčkov.

Referenca: Akacem LD, Simpkin CT, Carskadon MA, Wright KP Jr, Jenni OG, Achermann P, et al. (2015) Čas cirkadiane ure in spanja se razlikujeta med dremajočimi in nedremajočimi malčki. PLoS ONE 10(4): e0125181. https://doi.org/10.1371/journal.pone.0125181

Uvažali bomo knjižnice, ki jih bomo potrebovali

import numpy as np import pandas as pd from scipy.stats import t pd.set_option('display.max_columns', 30) # nastavite tako, da lahko vidite vse stolpce uvozne matematike DataFrame
df = pd.read_csv(nap_no_nap.csv) #branje podatkov
df.head ()
Intervali zaupanja s Pythonom

Ustvarite dva 95-odstotna intervala zaupanja za povprečni čas spanja, enega za malčke, ki dremajo, in enega za malčke, ki ne dremajo. Najprej bomo izolirali stolpec 'nočni čas za spanje' za tiste, ki dremajo, v novo spremenljivko, in tiste, ki niso dremali, v drugo novo spremenljivko. Čas za spanje je tukaj decimaliziran.

bedtime_nap = df['nočni čas za spanje'].loc[df['napping'] == 1] bedtime_no_nap = df['nočni čas za spanje'].loc[df['napping'] == 0]

print(len(bedtime_nap))

print(len(bedtime_no_nap))

izhod: 15 n 5


Zdaj bomo našli vzorec povprečnega časa spanja za dremež in no_nap.

nap_mean_bedtime = bedtime_nap.mean() #20.304 no_nap_mean_bedtime = bedtime_no_nap.mean() #19.59

Zdaj bomo našli vzorčno standardno odstopanje za Xnap in Xbrez dremeža 

nap_s_bedtime = np.std(bedtime_nap,ddof=1) no_nap_s_bedtime = np.std(bedtime_no_nap,ddof=1)

Opomba: Parameter ddof je nastavljen na 1 za vzorec std dev, sicer bo postal populacijski std dev.

Zdaj bomo našli vzorec standardne napake za Xnap in Xbrez dremeža 

nap_se_mean_bedtime = nap_s_bedtime/math.sqrt(len(bedtime_nap)) #0.1526 no_nap_se_mean_bedtime = no_nap_s_bedtime/math.sqrt(len(bedtime_no_nap)) #0.2270

Zaenkrat je vse v redu, zdaj pa, ker je velikost vzorca majhna in nimamo standardnega odklona deleža populacije, bomo uporabili vrednost t*. Eden od načinov za iskanje vrednosti t* je z uporabo scipy.stats t.ppf funkcijo. Argumenti za t.ppf() so q = odstotek, df = stopnja svobode, lestvica = std dev, loc = povprečje. Ker je t-porazdelitev simetrična za 95-odstotni interval zaupanja, bo q 0.975. Nanašati se na ta za več informacij o t.ppf().

nap_t_star = t.ppf(0.975,df=14) #2.14 no_nap_t_star = t.ppf(0.975,df=5) #2.57

Zdaj bomo dodali dele, da končno zgradimo naš interval zaupanja.

nap_ci_plus = nap_mean_time_bed + nap_t_star*nap_se_bedtime

nap_ci_minus = nap_mean_time_bed – nap_t_star*nap_se_bedtime

print(nap_ci_minus,nap_ci_plus)

no_nap_ci_plus = no_nap_mean_time_bed + no_nap_t_star*nap_se_bedtime

no_nap_ci_minus = no_nap_mean_time_bed – no_nap_t_star*nap_se_bedtime

print(no_nap_ci_minus,no_nap_ci_plus)


izhod: 19.976680775477412 20.631319224522585 18.95974084563192 20.220259154368087

Tolmačenje: 

Iz zgornjih rezultatov sklepamo, da smo 95-odstotno prepričani, da je povprečni čas spanja za dremajoče malčke med 19.98 in 20.63 (popoldne), medtem ko je za nedremajoče malčke med 18.96 in 20.22 (popoldne). Ti rezultati so v skladu z našimi pričakovanji, da boste spali pozno zvečer, če čez dan zadremate.

Končne opombe

Torej je šlo za preproste intervale zaupanja z uporabo vrednosti z in t. To je res pomemben koncept, ki ga je treba poznati v primeru katere koli statistične študije. Odlična inferencialna statistična metoda za ocenjevanje populacijskih parametrov iz vzorčnih podatkov. Intervali zaupanja so povezani tudi s testiranjem hipotez, da za 95 % CI pustite 5 % prostora za anomalije. Če ničelna hipoteza sodi v interval zaupanja, bo p-vrednost velika in ničelne hipoteze ne bomo mogli zavrniti. Nasprotno, če pade čez, bomo imeli dovolj dokazov, da zavrnemo ničelne in sprejmemo alternativne hipoteze.

Upam, da vam je bil članek všeč in srečno novo leto (:

Mediji, prikazani v tem članku, niso v lasti Analytics Vidhya in se uporabljajo po lastni presoji avtorja.

Vir: https://www.analyticsvidhya.com/blog/2022/01/understanding-confidence-intervals-with-python/

Časovni žig:

Več od Analitika Vidhya