Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Statistiska Operationer | Matematik med NumPy
Ultimata NumPy

bookStatistiska Operationer

Att utföra olika statistiska operationer på arrayer är avgörande för dataanalys och maskininlärning. NumPy tillhandahåller funktioner och metoder för att utföra dessa effektivt.

Centrala tendensmått

Centrala tendensmått representerar ett centralt eller representativt värde inom en sannolikhetsfördelning. Oftast beräknas dessa mått dock för ett visst urval.

Här är de två huvudsakliga måtten:

  • Medelvärde: summan av alla värden dividerat med det totala antalet värden;
  • Median: Det mittersta värdet i ett sorterat urval.

NumPy tillhandahåller funktionerna mean() och median() för att beräkna medelvärde respektive 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 visade också det sorterade urvalet så att du tydligt kan se medianen. Vårt urval har ett udda antal element (7), så medianen är helt enkelt elementet på index (n + 1) / 2 i det sorterade urvalet, där n är storleken på urvalet.

Note
Notering

När urvalet har ett jämnt antal element är medianen medelvärdet av elementen på index n / 2 och n / 2 - 1 i det sorterade urvalet.

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 urval är redan sorterat och har 8 element, så n / 2 - 1 = 3 och sample[3] är 10. n / 2 = 4 och sample[4] är 15. Därför är medianen (10 + 15) / 2 = 12.5.

Spridningsmått

Två spridningsmått är varians och standardavvikelse. Varians mäter hur utspridd datan är. Det är lika med medelvärdet av de kvadrerade avvikelserna från medelvärdet för varje värde.

Standardavvikelse är kvadratroten av variansen. Den ger ett mått på hur utspridd datan är i samma enheter som datan.

NumPy har funktionen var() för att beräkna variansen för urvalet och funktionen std() för att beräkna standardavvikelsen för urvalet:

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

Beräkningar i högdimensionella arrayer

Alla dessa funktioner har en andra parameter axis. Dess standardvärde är None, vilket innebär att måttet beräknas längs en utslätad array (även om den ursprungliga arrayen är 2D eller högre dimensionell).

Du kan också ange den exakta axeln längs vilken måttet ska beräknas:

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

Bilden nedan visar strukturen för arrayen exam_scores som används i uppgiften:

Uppgift

Swipe to start coding

Du analyserar arrayen exam_scores, en tvådimensionell array med simulerade provresultat för 2 studenter (2 rader) över 5 olika prov (5 kolumner).

  1. Beräkna medelvärdet för varje student genom att ange det andra nyckelargumentet.
  2. Beräkna medianen av alla resultat.
  3. Beräkna variansen av alla resultat.
  4. Beräkna standardavvikelsen av alla resultat.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 3
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain how to interpret the results of the mean and median calculations?

What is the difference between variance and standard deviation in practical terms?

How does the axis parameter affect calculations on higher dimensional arrays?

close

Awesome!

Completion rate improved to 3.7

bookStatistiska Operationer

Svep för att visa menyn

Att utföra olika statistiska operationer på arrayer är avgörande för dataanalys och maskininlärning. NumPy tillhandahåller funktioner och metoder för att utföra dessa effektivt.

Centrala tendensmått

Centrala tendensmått representerar ett centralt eller representativt värde inom en sannolikhetsfördelning. Oftast beräknas dessa mått dock för ett visst urval.

Här är de två huvudsakliga måtten:

  • Medelvärde: summan av alla värden dividerat med det totala antalet värden;
  • Median: Det mittersta värdet i ett sorterat urval.

NumPy tillhandahåller funktionerna mean() och median() för att beräkna medelvärde respektive 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 visade också det sorterade urvalet så att du tydligt kan se medianen. Vårt urval har ett udda antal element (7), så medianen är helt enkelt elementet på index (n + 1) / 2 i det sorterade urvalet, där n är storleken på urvalet.

Note
Notering

När urvalet har ett jämnt antal element är medianen medelvärdet av elementen på index n / 2 och n / 2 - 1 i det sorterade urvalet.

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 urval är redan sorterat och har 8 element, så n / 2 - 1 = 3 och sample[3] är 10. n / 2 = 4 och sample[4] är 15. Därför är medianen (10 + 15) / 2 = 12.5.

Spridningsmått

Två spridningsmått är varians och standardavvikelse. Varians mäter hur utspridd datan är. Det är lika med medelvärdet av de kvadrerade avvikelserna från medelvärdet för varje värde.

Standardavvikelse är kvadratroten av variansen. Den ger ett mått på hur utspridd datan är i samma enheter som datan.

NumPy har funktionen var() för att beräkna variansen för urvalet och funktionen std() för att beräkna standardavvikelsen för urvalet:

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

Beräkningar i högdimensionella arrayer

Alla dessa funktioner har en andra parameter axis. Dess standardvärde är None, vilket innebär att måttet beräknas längs en utslätad array (även om den ursprungliga arrayen är 2D eller högre dimensionell).

Du kan också ange den exakta axeln längs vilken måttet ska beräknas:

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

Bilden nedan visar strukturen för arrayen exam_scores som används i uppgiften:

Uppgift

Swipe to start coding

Du analyserar arrayen exam_scores, en tvådimensionell array med simulerade provresultat för 2 studenter (2 rader) över 5 olika prov (5 kolumner).

  1. Beräkna medelvärdet för varje student genom att ange det andra nyckelargumentet.
  2. Beräkna medianen av alla resultat.
  3. Beräkna variansen av alla resultat.
  4. Beräkna standardavvikelsen av alla resultat.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 3
single

single

some-alt