Einfache Zufalls- und systematische Stichprobe

Stichprobenziehung in Python

James Chapman

Curriculum Manager, DataCamp

Einfache Zufallsstichprobe

Eine Hand zieht einen gefalteten Zettel aus einer Losbox.

Rollende Lottokugeln.

Stichprobenziehung in Python

Einfache Zufallsstichprobe von Kaffees

Kaffeebohnen in Reihen und Spalten angeordnet.

Kaffeebohnen in Reihen und Spalten, einige davon ausgegraut.

Stichprobenziehung in Python

Einfache Zufallsstichprobe mit 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 
Stichprobenziehung in Python

Systematische Stichprobe

Kaffeebohnen in Reihen und Spalten angeordnet.

Kaffeebohnen in Reihen und Spalten, die meisten ausgegraut bis auf eine Diagonale.

Stichprobenziehung in Python

Systematische Stichprobe – Intervall festlegen

sample_size = 5

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

print(interval)
267
Stichprobenziehung in Python

Systematische Stichprobe – Zeilen auswählen

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  
Stichprobenziehung in Python

Das Problem bei systematischen Stichproben

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

Streudiagramm: Nachgeschmack vs. Index.

Systematische Stichprobe ist nur sicher, wenn kein Muster im Plot erkennbar ist

Stichprobenziehung in Python

Systematische Stichprobe sicher machen

shuffled = coffee_ratings.sample(frac=1)

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

Streudiagramm: Nachgeschmack vs. Index nach Mischen der Daten.

Zeilen mischen + systematische Stichprobe entspricht einer einfachen Zufallsstichprobe

Stichprobenziehung in Python

Lass uns üben!

Stichprobenziehung in Python

Preparing Video For Download...