Sampling acak sederhana dan sistematis

Sampling di Python

James Chapman

Curriculum Manager, DataCamp

Sampling acak sederhana

Tangan mengambil kertas terlipat dari toples undian.

Bola lotre yang bergulir.

Sampling di Python

Sampling acak sederhana pada kopi

Biji kopi tersusun dalam baris dan kolom.

Biji kopi tersusun dalam baris dan kolom, beberapa diantaranya berwarna abu-abu.

Sampling di Python

Sampling acak sederhana dengan pandas

coffee_ratings.sample(n=5, random_state=19000113)
     total_cup_points         variety country_of_origin  aroma  flavor  \
437             83.25            None          Colombia   7.92    7.75   
285             83.83  Yellow Bourbon            Brazil   7.92    7.50   
784             82.08            None          Colombia   7.50    7.42   
648             82.58         Caturra          Colombia   7.58    7.50   
155             84.58         Caturra          Colombia   7.42    7.67  

     aftertaste  body  balance  
437        7.25  7.83     7.58  
285        7.33  8.17     7.50  
784        7.42  7.67     7.42  
648        7.42  7.67     7.42  
155        7.75  8.08     7.83 
Sampling di Python

Sampling sistematis

Biji kopi tersusun dalam baris dan kolom.

Biji kopi tersusun dalam baris dan kolom, sebagian besar berwarna abu-abu kecuali yang berada pada garis diagonal.

Sampling di Python

Sampling sistematis - menetapkan interval

sample_size = 5

pop_size = len(coffee_ratings)
print(pop_size)
1338
interval = pop_size // sample_size

print(interval)
267
Sampling di Python

Sampling sistematis - memilih baris

coffee_ratings.iloc[::interval]
      total_cup_points  variety country_of_origin  aroma  flavor  aftertaste  \
0                90.58     None          Ethiopia   8.67    8.83        8.67   
267              83.92     None          Colombia   7.83    7.75        7.58   
534              82.92  Bourbon       El Salvador   7.50    7.50        7.75   
801              82.00   Typica            Taiwan   7.33    7.50        7.17   
1068             80.50    Other            Taiwan   7.17    7.17        7.17   

      body  balance  
0     8.50     8.42  
267   7.75     7.75  
534   7.92     7.83  
801   7.50     7.33  
1068  7.17     7.25  
Sampling di Python

Masalah pada sampling sistematis

coffee_ratings_with_id = coffee_ratings.reset_index()
coffee_ratings_with_id.plot(x="index", y="aftertaste", kind="scatter")
plt.show()

Plot sebar nilai aftertaste terhadap indeks.

Sampling sistematis aman hanya jika tidak ada pola pada scatter plot ini

Sampling di Python

Membuat sampling sistematis aman

shuffled = coffee_ratings.sample(frac=1)

shuffled = shuffled.reset_index(drop=True).reset_index()
shuffled.plot(x="index", y="aftertaste", kind="scatter") plt.show()

Plot sebar nilai aftertaste terhadap indeks setelah pengacakan dataset.

Mengacak baris + sampling sistematis setara dengan sampling acak sederhana

Sampling di Python

Ayo berlatih!

Sampling di Python

Preparing Video For Download...