Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Statistiske Operasjoner | Matematikk med NumPy
Ultimate NumPy

Sveip for å vise menyen

book
Statistiske Operasjoner

Utføre ulike statistiske operasjoner på matriser er essensielt for dataanalyse og maskinlæring. NumPy gir funksjoner og metoder for å utføre dem effektivt.

Mål for sentraltendens

Mål for sentraltendens representerer en sentral eller representativ verdi innenfor en sannsynlighetsfordeling. For det meste vil du imidlertid beregne disse målene for et bestemt utvalg.

Her er de to hovedmålene:

  • Gjennomsnitt: summen av alle verdier delt på det totale antallet verdier;

  • Median: Den midterste verdien i et sortert utvalg.

NumPy gir mean() og median() funksjoner for å beregne henholdsvis gjennomsnitt og median:

12345678
import numpy as np sample = np.array([10, 25, 15, 30, 20, 10, 2]) # Calculating the mean sample_mean = np.mean(sample) print(f'Sorted sample: {np.sort(sample)}') # Calculating the median sample_median = np.median(sample) print(f'Mean: {sample_mean}, median: {sample_median}')
copy

Vi viste også det sorterte utvalget slik at du tydelig kan se medianen. Vårt utvalg har et oddetall antall elementer (7), så medianen er ganske enkelt elementet på indeks (n + 1) / 2 i det sorterte utvalget, hvor n er størrelsen på utvalget.

Merk

Når utvalget har et partall antall elementer, er medianen gjennomsnittet av elementene på indeks n / 2 og n / 2 - 1 i det sorterte utvalget.

1234
import numpy as np sample = np.array([1, 2, 8, 10, 15, 20, 25, 30]) sample_median = np.median(sample) print(f'Median: {sample_median}')
copy

Vårt utvalg er allerede sortert og har 8 elementer, så n / 2 - 1 = 3 og sample[3] er 10. n / 2 = 4 og sample[4] er 15. Derfor er vår median (10 + 15) / 2 = 12.5.

Spredningsmål

To mål for spredning er varians og standardavvik. Varians måler hvor spredt dataene er. Det er lik gjennomsnittet av de kvadrerte forskjellene mellom hver verdi og gjennomsnittet.

Standardavvik er kvadratroten av variansen. Det gir et mål på hvor spredt dataene er i de samme enhetene som dataene.

NumPy har funksjonen var() for å beregne variansen av utvalget og funksjonen std() for å beregne standardavviket av utvalget:

1234567
import numpy as np sample = np.array([10, 25, 15, 30, 20, 10, 2]) # Calculating the variance sample_variance = np.var(sample) # Calculating the standard deviation sample_std = np.std(sample) print(f'Variance: {sample_variance}, standard deviation: {sample_std}')
copy

Beregninger i høyere dimensjonale matriser

Alle disse funksjonene har en andre parameter axis. Dens standardverdi er None, som betyr at målet vil bli beregnet langs en flatet matrise (selv om den opprinnelige matrisen er 2D eller høyere dimensjonal).

Du kan også spesifisere den eksakte aksen langs hvilken målet skal beregnes:

12345678
import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Calculating the mean in a flattened array print(np.mean(array_2d)) # Calculating the mean along axis 0 print(np.mean(array_2d, axis=0)) # Calculating the mean along axis 1 print(np.mean(array_2d, axis=1))
copy

Bildet nedenfor viser strukturen til exam_scores-arrayet som brukes i oppgaven:

Oppgave

Swipe to start coding

Du analyserer exam_scores-arrayet, en 2D-array av simulerte testresultater for 2 studenter (2 rader) på tvers av 5 forskjellige eksamener (5 kolonner).

  1. Beregn gjennomsnittlig poengsum for hver student ved å spesifisere det andre nøkkelordargumentet.

  2. Beregn medianen av alle poengsummer.

  3. Beregn variansen av alle poengsummer.

  4. Beregn standardavviket av alle poengsummer.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3

Spør AI

expand
ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

book
Statistiske Operasjoner

Utføre ulike statistiske operasjoner på matriser er essensielt for dataanalyse og maskinlæring. NumPy gir funksjoner og metoder for å utføre dem effektivt.

Mål for sentraltendens

Mål for sentraltendens representerer en sentral eller representativ verdi innenfor en sannsynlighetsfordeling. For det meste vil du imidlertid beregne disse målene for et bestemt utvalg.

Her er de to hovedmålene:

  • Gjennomsnitt: summen av alle verdier delt på det totale antallet verdier;

  • Median: Den midterste verdien i et sortert utvalg.

NumPy gir mean() og median() funksjoner for å beregne henholdsvis gjennomsnitt og median:

12345678
import numpy as np sample = np.array([10, 25, 15, 30, 20, 10, 2]) # Calculating the mean sample_mean = np.mean(sample) print(f'Sorted sample: {np.sort(sample)}') # Calculating the median sample_median = np.median(sample) print(f'Mean: {sample_mean}, median: {sample_median}')
copy

Vi viste også det sorterte utvalget slik at du tydelig kan se medianen. Vårt utvalg har et oddetall antall elementer (7), så medianen er ganske enkelt elementet på indeks (n + 1) / 2 i det sorterte utvalget, hvor n er størrelsen på utvalget.

Merk

Når utvalget har et partall antall elementer, er medianen gjennomsnittet av elementene på indeks n / 2 og n / 2 - 1 i det sorterte utvalget.

1234
import numpy as np sample = np.array([1, 2, 8, 10, 15, 20, 25, 30]) sample_median = np.median(sample) print(f'Median: {sample_median}')
copy

Vårt utvalg er allerede sortert og har 8 elementer, så n / 2 - 1 = 3 og sample[3] er 10. n / 2 = 4 og sample[4] er 15. Derfor er vår median (10 + 15) / 2 = 12.5.

Spredningsmål

To mål for spredning er varians og standardavvik. Varians måler hvor spredt dataene er. Det er lik gjennomsnittet av de kvadrerte forskjellene mellom hver verdi og gjennomsnittet.

Standardavvik er kvadratroten av variansen. Det gir et mål på hvor spredt dataene er i de samme enhetene som dataene.

NumPy har funksjonen var() for å beregne variansen av utvalget og funksjonen std() for å beregne standardavviket av utvalget:

1234567
import numpy as np sample = np.array([10, 25, 15, 30, 20, 10, 2]) # Calculating the variance sample_variance = np.var(sample) # Calculating the standard deviation sample_std = np.std(sample) print(f'Variance: {sample_variance}, standard deviation: {sample_std}')
copy

Beregninger i høyere dimensjonale matriser

Alle disse funksjonene har en andre parameter axis. Dens standardverdi er None, som betyr at målet vil bli beregnet langs en flatet matrise (selv om den opprinnelige matrisen er 2D eller høyere dimensjonal).

Du kan også spesifisere den eksakte aksen langs hvilken målet skal beregnes:

12345678
import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Calculating the mean in a flattened array print(np.mean(array_2d)) # Calculating the mean along axis 0 print(np.mean(array_2d, axis=0)) # Calculating the mean along axis 1 print(np.mean(array_2d, axis=1))
copy

Bildet nedenfor viser strukturen til exam_scores-arrayet som brukes i oppgaven:

Oppgave

Swipe to start coding

Du analyserer exam_scores-arrayet, en 2D-array av simulerte testresultater for 2 studenter (2 rader) på tvers av 5 forskjellige eksamener (5 kolonner).

  1. Beregn gjennomsnittlig poengsum for hver student ved å spesifisere det andre nøkkelordargumentet.

  2. Beregn medianen av alle poengsummer.

  3. Beregn variansen av alle poengsummer.

  4. Beregn standardavviket av alle poengsummer.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 3
Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Vi beklager at noe gikk galt. Hva skjedde?
some-alt