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

Stryg for at vise menuen

book
Statistiske Operationer

At udføre forskellige statistiske operationer på arrays er essentielt for dataanalyse og maskinlæring. NumPy tilbyder funktioner og metoder til at udføre dem effektivt.

Mål for Central Tendens

Mål for central tendens repræsenterer en central eller repræsentativ værdi inden for en sandsynlighedsfordeling. Oftest vil du dog beregne disse mål for en bestemt prøve.

Her er de to hovedmål:

  • Mean: summen af alle værdier divideret med det totale antal værdier;

  • Median: Den midterste værdi i en sorteret prøve.

NumPy tilbyder mean() og median() funktioner til at beregne henholdsvis gennemsnittet og medianen:

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 sorterede eksempel, så du tydeligt kan se medianen. Vores eksempel har et ulige antal elementer (7), så medianen er simpelthen elementet på indeks (n + 1) / 2 i det sorterede eksempel, hvor n er størrelsen af eksemplet.

Bemærk

Når eksemplet har et lige antal elementer, er medianen gennemsnittet af elementerne på indeks n / 2 og n / 2 - 1 i det sorterede eksempel.

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

Vores eksempel er allerede sorteret og har 8 elementer, så n / 2 - 1 = 3 og sample[3] er 10. n / 2 = 4 og sample[4] er 15. Derfor er vores median (10 + 15) / 2 = 12.5.

Spredningsmål

To mål for spredning er varians og standardafvigelse. Varians måler, hvor spredt dataene er. Det er lig med gennemsnittet af de kvadrerede forskelle af hver værdi fra gennemsnittet.

Standardafvigelse er kvadratroden af variansen. Det giver et mål for, hvor spredt dataene er i de samme enheder som dataene.

NumPy har funktionen var() til at beregne variansen af prøven og funktionen std() til at beregne standardafvigelsen af prøven:

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øjere dimensionelle arrays

Alle disse funktioner har en anden parameter axis. Dens standard værdi er None, hvilket betyder, at målingen vil blive beregnet langs et fladt array (selv hvis det oprindelige array er 2D eller højere dimensionelt).

Du kan også specificere den præcise akse, langs hvilken målingen 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

Billedet nedenfor viser strukturen af exam_scores arrayet, der bruges i opgaven:

Opgave

Swipe to start coding

Du analyserer exam_scores arrayet, et 2D-array af simulerede testresultater for 2 studerende (2 rækker) på tværs af 5 forskellige eksamener (5 kolonner).

  1. Beregn gennemsnitsscoren for hver studerende ved at specificere det andet nøgleordargument.

  2. Beregn medianen af alle scores.

  3. Beregn variansen af alle scores.

  4. Beregn standardafvigelsen af alle scores.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 3

Spørg AI

expand
ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

book
Statistiske Operationer

At udføre forskellige statistiske operationer på arrays er essentielt for dataanalyse og maskinlæring. NumPy tilbyder funktioner og metoder til at udføre dem effektivt.

Mål for Central Tendens

Mål for central tendens repræsenterer en central eller repræsentativ værdi inden for en sandsynlighedsfordeling. Oftest vil du dog beregne disse mål for en bestemt prøve.

Her er de to hovedmål:

  • Mean: summen af alle værdier divideret med det totale antal værdier;

  • Median: Den midterste værdi i en sorteret prøve.

NumPy tilbyder mean() og median() funktioner til at beregne henholdsvis gennemsnittet og medianen:

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 sorterede eksempel, så du tydeligt kan se medianen. Vores eksempel har et ulige antal elementer (7), så medianen er simpelthen elementet på indeks (n + 1) / 2 i det sorterede eksempel, hvor n er størrelsen af eksemplet.

Bemærk

Når eksemplet har et lige antal elementer, er medianen gennemsnittet af elementerne på indeks n / 2 og n / 2 - 1 i det sorterede eksempel.

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

Vores eksempel er allerede sorteret og har 8 elementer, så n / 2 - 1 = 3 og sample[3] er 10. n / 2 = 4 og sample[4] er 15. Derfor er vores median (10 + 15) / 2 = 12.5.

Spredningsmål

To mål for spredning er varians og standardafvigelse. Varians måler, hvor spredt dataene er. Det er lig med gennemsnittet af de kvadrerede forskelle af hver værdi fra gennemsnittet.

Standardafvigelse er kvadratroden af variansen. Det giver et mål for, hvor spredt dataene er i de samme enheder som dataene.

NumPy har funktionen var() til at beregne variansen af prøven og funktionen std() til at beregne standardafvigelsen af prøven:

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øjere dimensionelle arrays

Alle disse funktioner har en anden parameter axis. Dens standard værdi er None, hvilket betyder, at målingen vil blive beregnet langs et fladt array (selv hvis det oprindelige array er 2D eller højere dimensionelt).

Du kan også specificere den præcise akse, langs hvilken målingen 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

Billedet nedenfor viser strukturen af exam_scores arrayet, der bruges i opgaven:

Opgave

Swipe to start coding

Du analyserer exam_scores arrayet, et 2D-array af simulerede testresultater for 2 studerende (2 rækker) på tværs af 5 forskellige eksamener (5 kolonner).

  1. Beregn gennemsnitsscoren for hver studerende ved at specificere det andet nøgleordargument.

  2. Beregn medianen af alle scores.

  3. Beregn variansen af alle scores.

  4. Beregn standardafvigelsen af alle scores.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 3
Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Vi beklager, at noget gik galt. Hvad skete der?
some-alt