Jeg har en oppgave som jeg ønsker å finne konfidensnivået gitt z-verdien fra. Jeg har en utvalgspopulasjon. Fra den befolkningen, gitt sin fordeling, vil jeg finne tillitsnivået til en gitt verdi av den befolkningen. Med andre ord, gitt en verdi av befolkningen, vil jeg gjerne vite om den er innenfor 95% (konfidensnivå) av hele befolkningen eller 68% eller 50% og så videre. Vanligvis kan vi finne z-verdi og konfidensintervall og gitt konfidensnivå som forklart her Hvordan finne konfidensintervall . Men jeg vil gjerne finne konfidensnivået gitt z-verdien (som i dette tilfellet er en gitt verdi fra befolkningen).
Hvordan kan jeg takle dette? Hvis det er mulig, skal det være i python eller i R
Svar
OK, for et 95% konfidensintervall, vil du vite hvor mange standardavvik fra gjennomsnittet poengestimatet ditt er («z-score»). For å få det, tar du av 5% «haler». Arbeider du i persentilform har du 100-95 som gir en verdi på 5 eller 0,05 i desimalform.
Del det i to for å få 0,025, og bruk deretter qnorm-funksjonen i R for å få z-stjernen («kritisk verdi»). Siden du bare bryr deg om den ene «siden» av kurven (verdiene på hver side er speilbilder av hverandre) og du vil ha et positivt tall, send argumentet lavere. Tail = FALSE.
Så til slutt vil det se slik ut:
qnorm(.025,lower.tail=FALSE)
gir en verdi på 1,959964
Du kobler deretter verdien til ligningen for feilmarginen for å fullføre ting.
Hvis du vil gå den andre retningen, fra en «kritisk verdi» til en sannsynlighet, bruk pnorm-funksjonen. Noe sånt som:
pnorm(1.959964,lower.tail=FALSE)
som gir deg tilbake 0,025
Kommentarer
- Jeg kunne ha formulert det bedre, men nett-nettet er " bruk qnorm / pnorm ".
Svar
For å konvertere mellom z-score og konfidensverdier med python, bruk cdf
og ppf
funksjoner i scipy.stats.norm .
Det er et fint eksempel på hvordan du bruker dem i svaret for dette spørsmålet .