كيفية إجراء اختبار t للعينات المقترنة في r
اختبار t للعينات المقترنة هو اختبار إحصائي يقارن متوسط عينتين عندما يمكن مطابقة كل ملاحظة من عينة واحدة مع ملاحظة من العينة الأخرى.
على سبيل المثال، لنفترض أننا نريد معرفة ما إذا كان منهج معين له تأثير كبير على أداء الطلاب في اختبار معين. ولاختبار ذلك، طلبنا من 20 طالبًا في الفصل إجراء اختبار مسبق. ثم يشارك كل طالب في برنامج الدراسة يوميا لمدة أسبوعين. ثم يقوم الطلاب بإعادة إجراء اختبار بنفس الصعوبة.
لمقارنة الفرق بين متوسط الدرجات في الاختبارين الأول والثاني، نستخدم اختبار t المزدوج لأنه لكل طالب، يمكن ربط درجاته في الاختبار الأول بدرجاته في الاختبار الثاني.
كيفية إجراء اختبار t المقترن
لإجراء اختبار t المقترن، يمكننا استخدام الطريقة التالية:
الخطوة الأولى: تحديد الفرضيات الصفرية والبديلة.
ح 0 : μ د = 0
H a : μ d ≠ 0 (على الوجهين)
H a : μ d > 0 (أحادي الجانب)
H a : μ d <0 (أحادي الجانب)
حيث μd هو الفرق المتوسط.
الخطوة 2: ابحث عن إحصائية الاختبار والقيمة p المقابلة لها.
اجعل أ = درجة الطالب في الاختبار الأول و ب = درجة الطالب في الاختبار الثاني. لاختبار الفرضية الصفرية القائلة بأن الفرق المتوسط الحقيقي بين درجات الاختبار هو صفر:
- احسب الفرق بين كل زوج من الدرجات (d i = b i – a i )
- احسب متوسط الفرق (د)
- حساب الانحراف المعياري للاختلافات ق د
- احسب إحصائية t، وهي T = d / (s d / √n)
- أوجد القيمة p المقابلة لإحصائيات t بدرجات حرية n-1 .
الخطوة 3: رفض أو عدم رفض الفرضية الصفرية، بناءً على مستوى الأهمية.
إذا كانت القيمة p أقل من مستوى الأهمية المختار، فإننا نرفض الفرضية الصفرية ونستنتج أن هناك فرق ذو دلالة إحصائية بين متوسطي المجموعتين. وإلا فإننا سوف نفشل في رفض فرضية العدم.
كيفية إجراء اختبار t المقترن في R
لإجراء اختبار t مقترن في لغة R، يمكننا استخدام الدالة المضمنة t.test() بالصيغة التالية:
t.test (x، y، مقترن = TRUE، بديل = “وجهان”)
- x,y: المتجهان الرقميان اللذان نرغب في مقارنتهما
- مقترن: قيمة منطقية تحدد أننا نريد حساب اختبار t مقترن
- البديل: الفرضية البديلة. يمكن ضبط هذا على “على الوجهين” (افتراضي)، أو “أعلى” أو “أسفل”.
يوضح المثال التالي كيفية إجراء اختبار t مقترن لتحديد ما إذا كان هناك فرق كبير في متوسط الدرجات بين الاختبار القبلي والاختبار البعدي لـ 20 طالبًا.
قم بإنشاء البيانات
أولاً، سنقوم بإنشاء مجموعة البيانات:
#create the dataset data <- data.frame(score = c(85,85, 78, 78, 92, 94, 91, 85, 72, 97, 84, 95, 99, 80, 90, 88, 95, 90, 96, 89, 84, 88, 88, 90, 92, 93, 91, 85, 80, 93, 97, 100, 93, 91, 90, 87, 94, 83, 92, 95), group = c(rep('pre', 20), rep('post', 20))) #view the dataset data #scoregroup #1 85 pre #2 85 pre #3 78 pre #4 78 pre #5 92 pre #6 94 pre #7 91 pre #8 85 pre #9 72 pre #10 97 pre #11 84 pre #12 95 pre #13 99 pre #14 80 pre #15 90 pre #16 88 pre #17 95 pre #18 90 pre #19 96 pre #20 89 pre #21 84 post #22 88 post #23 88 post #24 90 post #25 92 post #26 93 post #27 91 post #28 85 post #29 80 post #30 93 post #31 97 post #32 100 posts #33 93 post #34 91 post #35 90 post #36 87 post #37 94 post #38 83 post #39 92 post #40 95 post
تصور الاختلافات
بعد ذلك، سنلقي نظرة على إحصائيات الملخص للمجموعتين باستخدام الدالتين group_by() والملخص () من مكتبة dplyr :
#load dplyr library
library(dplyr)
#find sample size, mean, and standard deviation for each group
data %>%
group_by (group) %>%
summarize (
count = n(),
mean = mean(score),
sd = sd(score)
)
# A tibble: 2 x 4
# group count mean sd
#
#1 post 20 90.3 4.88
#2 pre 20 88.2 7.24
يمكننا أيضًا إنشاء boxplots باستخدام الدالة boxplot() في R لعرض توزيع الدرجات للمجموعتين السابقة واللاحقة:
boxplot (score~group,
data=data,
main="Test Scores by Group",
xlab="Group",
ylab="Score",
col="steelblue",
border="black"
)
من خلال الإحصائيات الموجزة والمخططات المربعة، يمكننا أن نرى أن متوسط الدرجات في المجموعة البريدية أعلى قليلاً من متوسط الدرجات في المجموعة السابقة . يمكننا أيضًا أن نرى أن درجات ما بعد المجموعة لها تباين أقل من درجات ما قبل المجموعة.
لمعرفة ما إذا كان الفرق بين متوسطي هاتين المجموعتين ذا دلالة إحصائية، يمكننا إجراء اختبار t المقترن.
إجراء اختبار t مقترن
قبل إجراء اختبار t المقترن، نحتاج إلى التحقق من أن توزيع الاختلافات يتم توزيعه بشكل طبيعي (أو بشكل طبيعي تقريبًا). للقيام بذلك، يمكننا إنشاء متجه جديد يُعرف بالفرق بين الدرجات القبلية والبعدية، وإجراء اختبار شابيرو-ويلك للحالة الطبيعية على متجه القيم هذا:
#define new vector for difference between post and pre scores differences <- with(data, score[group == "post"] - score[group == "pre"]) #perform shapiro-wilk test for normality on this vector of values shapiro.test(differences) # Shapiro-Wilk normality test # #data: differences #W = 0.92307, p-value = 0.1135 #
القيمة p للاختبار هي 0.1135، وهي أكبر من alpha = 0.05. وبالتالي، فإننا نفشل في رفض الفرضية الصفرية القائلة بأن بياناتنا يتم توزيعها بشكل طبيعي. وهذا يعني أنه يمكننا الآن المضي قدمًا في اختبار t المقترن.
يمكننا استخدام الكود التالي لإجراء اختبار t المقترن:
t.test (score~group, data = data, paired = TRUE)
# Paired t-test
#
#data: score by group
#t = 1.588, df = 19, p-value = 0.1288
#alternative hypothesis: true difference in means is not equal to 0
#95 percent confidence interval:
# -0.6837307 4.9837307
#sample estimates:
#mean of the differences
#2.15
ومن النتيجة يمكننا أن نرى أن:
- إحصائيات اختبار t هي 1.588 .
- القيمة p لإحصائيات الاختبار هذه مع 19 درجة حرية (df) هي 0.1288 .
- فترة الثقة 95% لفرق المتوسط هي (-0.6837, 4.9837) .
- متوسط الفرق بين درجات المجموعة القبلية والبعدية هو 2.15 .
وبالتالي، نظرًا لأن القيمة p لدينا أقل من مستوى الأهمية لدينا وهو 0.05، فسوف نفشل في رفض الفرضية الصفرية القائلة بأن المجموعتين لهما وسائل ذات دلالة إحصائية.
وبعبارة أخرى، ليس لدينا أدلة كافية للقول بأن متوسطات الدرجات بين المجموعتين القبلية والبعدية تختلف إحصائيا. وهذا يعني أن المنهج لم يكن له تأثير كبير على درجات الاختبار.
بالإضافة إلى ذلك، تشير فترة الثقة البالغة 95% إلى أننا “واثقون بنسبة 95%” من أن متوسط الفرق الحقيقي بين المجموعتين يقع بين -0.6837 و 4.9837 .
وبما أن القيمة صفر موجودة ضمن فترة الثقة هذه، فهذا يعني أن الصفر يمكن أن يكون في الواقع الفرق الحقيقي بين متوسط الدرجات، ولهذا السبب فشلنا في رفض فرضية العدم في هذه الحالة.