أخذ العينات الطبقية في r (مع أمثلة)
غالبًا ما يأخذ الباحثون عينات من السكان ويستخدمون البيانات من العينة لاستخلاص استنتاجات حول السكان ككل.
طريقة أخذ العينات شائعة الاستخدام هي أخذ العينات العشوائية الطبقية ، حيث يتم تقسيم السكان إلى مجموعات ويتم اختيار عدد معين من الأعضاء من كل مجموعة عشوائيًا لإدراجهم في العينة.
يشرح هذا البرنامج التعليمي كيفية إجراء أخذ العينات العشوائية الطبقية في R.
مثال: أخذ العينات الطبقية في R
تتكون المدرسة الثانوية من 400 طالب إما من الطلاب الجدد أو طلاب السنة الثانية أو المبتدئين أو كبار السن. لنفترض أننا نريد أخذ عينة طبقية مكونة من 40 طالبًا، بحيث يتم تضمين 10 طلاب من كل صف في العينة.
يوضح الكود التالي كيفية إنشاء إطار بيانات عينة مكون من 400 طالب:
#make this example reproducible set.seed(1) #create data frame df <- data.frame(grade = rep(c('Freshman', 'Sophomore', 'Junior', 'Senior'), each =100), gpa = rnorm(400, mean=85, sd=3)) #view first six rows of data frame head(df) gpa grade 1 Freshman 83.12064 2 Freshman 85.55093 3 Freshman 82.49311 4 Freshman 89.78584 5 Freshman 85.98852 6 Freshman 82.53859
أخذ العينات الطبقية باستخدام تعداد الصفوف
يوضح التعليمة البرمجية التالية كيفية استخدام الدالتين group_by() و sample_n() من الحزمة dplyr للحصول على عينة عشوائية طبقية من إجمالي 40 طالبًا مع 10 طلاب من كل صف دراسي:
library (dplyr) #obtain laminated sample strat_sample <- df %>% group_by (grade) %>% sample_n (size=10) #find frequency of students from each grade table(strat_sample$grade) Freshman Junior Senior Sophomore 10 10 10 10
أخذ العينات الطبقية باستخدام جزء من الصفوف
يوضح التعليمة البرمجية التالية كيفية استخدام الدالتين group_by() و sample_frac() من الحزمة dplyr للحصول على عينة عشوائية طبقية نختار منها عشوائيًا 15% من الطلاب في كل صف دراسي:
library (dplyr) #obtain laminated sample strat_sample <- df %>% group_by (grade) %>% sample_frac (size=.15) #find frequency of students from each grade table(strat_sample$grade) Freshman Junior Senior Sophomore 15 15 15 15
مصادر إضافية
أنواع طرق أخذ العينات
أخذ العينات العنقودية في R
أخذ العينات المنهجية في R