Eșantionare și estimări punctuale

Eșantionare în Python

James Chapman

Curriculum Manager, DataCamp

Estimarea populației Franței

O hartă a Franței.

Recensământul întreabă fiecare gospodărie câte persoane locuiesc acolo.

Eșantionare în Python

Franța are o populație foarte mare

O hartă a Franței cu pictograme de persoane.

Recensământurile sunt foarte costisitoare!

Eșantionare în Python

Eșantionarea gospodăriilor

O hartă a Franței cu pictograme de persoane, unele evidențiate.

Este mai ieftin să întrebați un număr mic de gospodării și să folosiți statistici pentru a estima populația

Lucrarea cu un subset al populației se numește eșantionare

Eșantionare în Python

Populație vs. eșantion

Populația este setul complet de date

  • Nu se referă neapărat la persoane
  • De obicei, populația completă este necunoscută

 

Eșantionul este subsetul de date pe care îl analizați

Eșantionare în Python

Setul de date cu evaluări ale cafelei

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

 

  • Fiecare rând reprezintă 1 cafea
  • 1338 de rânduri
  • Îl vom trata ca populație
Eșantionare în Python

Puncte vs. aromă: populația

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]
Eșantionare în Python

Puncte vs. aromă: eșantion de 10 rânduri

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]
Eșantionare în Python

Eșantionare în Python pentru Series

  • Utilizați .sample() pentru DataFrame-uri și Series 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
Eșantionare în Python

Parametri ai populației și estimări punctuale

Un parametru al populației este un calcul efectuat pe setul de date al populației

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

O estimare punctuală sau statistică de eșantion este un calcul efectuat pe setul de date al eșantionului

np.mean(cup_points_samp)
81.31800000000001
Eșantionare în Python

Estimări punctuale cu pandas

pts_vs_flavor_pop['flavor'].mean()
7.526046337817639
pts_vs_flavor_samp['flavor'].mean()
7.485000000000001
Eșantionare în Python

Să exersăm!

Eșantionare în Python

Preparing Video For Download...