Próbkowanie i estymatory punktowe

Próbkowanie w Pythonie

James Chapman

Curriculum Manager, DataCamp

Szacowanie liczby ludności Francji

Mapa Francji.

Spis ludności pyta każde gospodarstwo domowe o liczbę mieszkańców.

Próbkowanie w Pythonie

Francja ma bardzo wielu mieszkańców

Mapa Francji z ikonami ludzi.

Spisy ludności są bardzo kosztowne!

Próbkowanie w Pythonie

Próbkowanie gospodarstw domowych

Mapa Francji z ikonami ludzi, niektóre wyróżnione.

Taniej jest przebadać małą liczbę gospodarstw i użyć statystyki do oszacowania populacji

Praca na podzbiorze całej populacji to próbkowanie

Próbkowanie w Pythonie

Populacja a próba

Populacja to kompletny zbiór danych

  • Nie musi dotyczyć ludzi
  • Zazwyczaj nie znamy całej populacji

 

Próba to podzbiór danych, na którym wykonujemy obliczenia

Próbkowanie w Pythonie

Zbiór danych ocen kawy

total_cup_points variety country_of_origin aroma flavor aftertaste body balance
90.58 NA Ethiopia 8.67 8.83 8.67 8.50 8.42
89.92 Other Ethiopia 8.75 8.67 8.50 8.42 8.42
... ... ... ... ... ... ... ...
73.75 NA Vietnam 6.75 6.67 6.5 6.92 6.83

 

  • Każdy wiersz reprezentuje 1 kawę
  • 1338 wierszy
  • Traktujemy to jako populację
Próbkowanie w Pythonie

Punkty a smak: populacja

pts_vs_flavor_pop = coffee_ratings[["total_cup_points", "flavor"]]
      total_cup_points  flavor
0                90.58    8.83
1                89.92    8.67
2                89.75    8.50
3                89.00    8.58
4                88.83    8.50
...                ...     ...
1333             78.75    7.58
1334             78.08    7.67
1335             77.17    7.33
1336             75.08    6.83
1337             73.75    6.67

[1338 rows x 2 columns]
Próbkowanie w Pythonie

Punkty a smak: próba 10 wierszy

pts_vs_flavor_samp = pts_vs_flavor_pop.sample(n=10)
      total_cup_points  flavor
1088             80.33    7.17
1157             79.67    7.42
1267             76.17    7.33
506              83.00    7.67
659              82.50    7.42
817              81.92    7.50
1050             80.67    7.42
685              82.42    7.50
1027             80.92    7.25
62               85.58    8.17

[10 rows x 2 columns]
Próbkowanie w Pythonie

Próbkowanie Series w Pythonie

  • Użyj .sample() dla DataFrames i Series w pandas
cup_points_samp = coffee_ratings['total_cup_points'].sample(n=10)
1088    80.33
1157    79.67
1267    76.17
...     ... 
685     82.42
1027    80.92
62      85.58
Name: total_cup_points, dtype: float64
Próbkowanie w Pythonie

Parametry populacji i estymatory punktowe

Parametr populacji to wartość obliczona na całym zbiorze danych

import numpy as np
np.mean(pts_vs_flavor_pop['total_cup_points'])
82.15120328849028

Estymator punktowy lub statystyka próby to wartość obliczona na próbie

np.mean(cup_points_samp)
81.31800000000001
Próbkowanie w Pythonie

Estymatory punktowe w pandas

pts_vs_flavor_pop['flavor'].mean()
7.526046337817639
pts_vs_flavor_samp['flavor'].mean()
7.485000000000001
Próbkowanie w Pythonie

Czas na ćwiczenia!

Próbkowanie w Pythonie

Preparing Video For Download...