Scipy Mann Whitney

Scipy Mann Whitney
Python -programmeringsspråket brukes ofte i datavitenskap og dataanalyse. De enkle, nyttige, gratis og lettfattelige algoritmene til Python-programmeringsspråket gjør oss i stand til å utføre en dyptgående dataanalyse. Algoritmene som brukes i datavitenskap er også veldig enkle å lære og implementere. Dessuten tilbyr Python -programmeringsspråket også flere nyttige pakker, funksjoner og metoder for å utføre de matematiske og statistiske beregningene. Denne artikkelen er strukturert rundt å utforske Mann Whitney U -testfunksjonen i Python.

Mann Whitney U Test

Det er en ikke-parametrisk statistisk hypotesetest som brukes til å sammenligne to prøver av liten størrelse og ha ikke-normal prøvedistribusjon. Det anses som lik den to-prøve t-testen der to prøver blir tilfeldig plukket og bestemt om de tilhører samme befolkning eller ikke. Siden det er en ikke-parametrisk test, gjøres det ingen forutsetninger for prøvefordelingen. Noen antagelser som tilfeldig plukker av prøvene, gjensidig uavhengighet i prøvene, målinger av ordinær skala osv. er laget.

Python Scipy Mann Whitney -funksjon

Python -programmeringsspråket har et utrolig bibliotek for å utføre alle slags matematiske og statistiske funksjoner automatisk og raskt. Det biblioteket er scipy som er kjent blant alle erfarne så vel som nybegynnerutviklere. Det gir en Mannwhitneyu () -funksjon for å utføre Mann Whitney U -testen. Syntaksen til Mannwhitneyu () -funksjonen er som følger:

Parametrene til Mannwhitneyu () -funksjonen brukes til å definere dataene og funksjonene som brukes på dataene. "X" og "Y" -parametrene brukes til å passere de to multidimensjonale eksemplarene som representerer eksempeldataene. Den "alternative" parameteren spesifiserer den alternative hypotesen for prøvene - mindre, større eller tosidig. Parameteren "use_continuity" brukes til å erklære om de skal anvende kontinuitetskorreksjonen eller ikke. "Axis" -parameteren definerer aksen som statistikkberegningen må utføre. Parameteren "Nan_policy" definerer hvordan du skal håndtere NAN -verdiene i prøvene som å heve et unntak, hopp over eller forplante.

Og til slutt spesifiserer "metode" -parameteren måten å beregne p-verdien som auto, nøyaktig eller asymptotisk. Til gjengjeld gir Mannwhitneyu () -funksjonen P-verdien og statistikken over prøver. La oss forstå hvordan vi implementerer Mannwhitneyu () -funksjonen i et Python -program.

Eksempel 1:

Dette eksemplet tar to prøver og gir dem til Mannwhitneyu () -funksjonen uten å spesifisere noen annen parameter. Vi vil sjekke resultatet av Mannwhitneyu () -funksjonen med standardverdiene for hver valgfri parameter. La oss vurdere det gitte eksemplet i følgende kodebit:

fra scipy importstatistikk
x = [5, 4, 10, 2, 9, 18, 20]
y = [12, 15, 25, 2, 9, 11, 13]
stat, p_value = statistikk.Mannwhitneyu (x, y)
Print ("Statistic Value of Prøver er =", Stat)
Print ("P-verdien til prøver er =", p_value)

Her inkluderer vi Scipy -biblioteket sammen med statistikkpakken slik at vi kan bruke Mannwhitneyu () -funksjonen. Når du skriver et hvilket som helst Python -program, må du huske at bibliotekene må importeres til programmet før du bruker en funksjon som er tilknyttet dem. Noen av de innebygde funksjonene kan brukes uten eksplisitt å ringe bibliotekene sine. Men de fleste av funksjonene kan ikke brukes i et program hvis du går glipp av å legge til bibliotekene deres i programmet. Forsikre deg om at alle nødvendige biblioteker er inkludert før du bruker funksjonene.

Etter å ha lagt til bibliotekene, er de to prøvesettene erklært i X og Y. Disse prøvene sendes til Mannwhitenyu () -funksjonen. La oss nå sjekke statistikken og p_verdien av de gitte prøvene i følgende utgang:

Eksempel 2:

La oss eksplisitt erklære verdien av en av de valgfrie parametrene i dette eksemplet. Som diskutert tidligere, kan du spesifisere den alternative hypotesen for prøvedataene, og det kan være mindre, større eller tosidig. Som standard bruker Mannwhitneyu () -funksjonen den "tosidige" verdien for "alternativ" -parameteren. I dette eksemplet vil vi teste hver verdi for den alternative parameteren for å forstå hvordan de fungerer med eksempeldataene. Tenk på følgende prøveeksempel:

fra scipy importstatistikk
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistikk.Mannwhitneyu (x, y)
Print ("Statistic Value of Prøver er =", Stat)
Print ("P-verdien til prøver er =", p_value)

Her spesifiserer vi ikke verdien for "alternativ" -parameteren. Dette gjøres for å sammenligne resultatet av standard "alternativ" verdi med alle andre alternativer. Dette er hva Mannwhitneyu () -funksjonen returnerer når vi ikke spesifiserer verdien for noen parameter:

Standardverdien for Mannwhitneyu () -funksjonen er "tosidig" som spesifiserer at de gitte prøvene ikke er like. Her gir vi den "tosidige" verdien for den "alternative" parameteren for å sammenligne resultatene. Den samme p-verdien returneres som den gjorde i forrige eksempel. La oss sjekke følgende resultat:

fra scipy importstatistikk
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistikk.Mannwhitneyu (x, y, alternativ = 'tosidig')
Print ("Statistic Value of Prøver er =", Stat)
Print ("P-verdien til prøver er =", p_value)

Ved å sammenligne begge utgangene kan vi konkludere med at resultatene er de samme.

Den "større" verdien for den "alternative" parameteren sjekker prøvene mot hypotesen om at den gitte X -prøven er stokastisk større enn den gitte Y -prøven. La oss gi den "større" verdien for den "alternative" parameteren for å sjekke den beregnede p-verdien:

fra scipy importstatistikk
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistikk.Mannwhitneyu (x, y, alternativ = 'større')
Print ("Statistic Value of Prøver er =", Stat)
Print ("P-verdien til prøver er =", p_value)

Her er utgangen fra den "større" verdien for den "alternative" parameteren:

Som du kan se, er p-verdien forskjellig fra p-verdien i de forrige utgangene.

Til slutt har vi den "mindre" verdien for "alternativ" -parameteren. Den "mindre" verdien spesifiserer at den gitte x -prøven er stokastisk mindre enn den gitte Y -prøven. La oss passere den "mindre" verdien for den "alternative" parameteren og se resultatet:

fra scipy importstatistikk
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistikk.Mannwhitneyu (x, y, alternativ = 'mindre')
Print ("Statistic Value of Prøver er =", Stat)
Print ("P-verdien til prøver er =", p_value)

Utgangen fra den "mindre" verdien for den "alternative" parameteren er som følger:

Konklusjon

Denne guiden er en rask oversikt over Mann Whitney U -testen, som også er kjent som Wilcoxon Mann Whitney (MWW), Wilcoxon Rank Sum Test og Wilcoxon Mann Whitney Test. Det er en ikke-parametrisk test som velger uavhengige prøver tilfeldig og sammenligner dem mot en hypotese for å spesifisere om de tilhører samme populasjon eller ikke eller har samme median eller ikke. Videre er det ikke gjort noen spesifikk distribusjonsformodning for å beregne P-verdien og teststatistikken. Scipy -biblioteket gir Mannwhitneyu () -funksjonen for å utføre Mann Whitney -testen på de gitte dataene. Ved hjelp av enkle og enkle eksempler demonstrerte vi hvordan vi implementerer Mannwhitneyu () -funksjonen i et Python -program.