كيفية إجراء اختبارات t في pandas (3 أمثلة)


توضح الأمثلة التالية كيفية إجراء ثلاثة اختبارات t مختلفة باستخدام pandas DataFrame:

  • اختبار t مستقل لعينتين
  • اختبار ويلش ذو العينتين
  • اختبار t للعينات المقترنة

مثال 1: اختبار t مستقل لعينتين في حيوانات الباندا

يتم استخدام اختبار t المستقل المكون من عينتين لتحديد ما إذا كانت وسائل مجتمعين متساويين.

على سبيل المثال، لنفترض أن الأستاذ يريد معرفة ما إذا كانت طريقتان مختلفتان للدراسة تؤديان إلى متوسط درجات مختلف في الامتحانات.

ولاختبار ذلك، قام بتجنيد 10 طلاب لاستخدام الطريقة (أ) و10 طلاب لاستخدام الطريقة (ب).

يوضح التعليمة البرمجية التالية كيفية إدخال درجات كل طالب في Pandas DataFrame، ثم استخدم وظيفة ttest_ind() الخاصة بمكتبة SciPy لإجراء اختبار t مستقل مكون من عينتين:

 import pandas as pd
from scipy. stats import ttest_ind

#create pandas DataFrame
df = pd. DataFrame ({'method': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',
                              'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'],
                   'score': [71, 72, 72, 75, 78, 81, 82, 83, 89, 91, 80, 81, 81,
                             84, 88, 88, 89, 90, 90, 91]})

#view first five rows of DataFrame
df. head ()

  method score
0 to 71
1 To 72
2 To 72
3 to 75
4 to 78

#define samples
group1 = df[df[' method ']==' A ']
group2 = df[df[' method ']==' B ']

#perform independent two sample t-test
ttest_ind(group1[' score '], group2[' score '])

Ttest_indResult(statistic=-2.6034304605397938, pvalue=0.017969284594810425)

ومن النتيجة يمكننا أن نرى:

  • إحصائية اختبار t: – 2.6034
  • القيمة p: 0.0179

وبما أن القيمة p أقل من 0.05، فإننا نرفض الفرضية الصفرية لاختبار t ونستنتج أن هناك أدلة كافية تشير إلى أن الطريقتين تؤديان إلى متوسط درجات مختلفة في الامتحان.

مثال 2: اختبار T ويلش في حيوانات الباندا

يشبه اختبار T Welch اختبار T المستقل المكون من عينتين، باستثناء أنه لا يفترض أن المجتمعين اللذين تم سحب العينات منهما لهما تباين متساوي .

لإجراء اختبار Welch’s t-test على نفس مجموعة البيانات تمامًا مثل المثال السابق، نحتاج ببساطة إلى تحديد equal_var=False في الدالة ttest_ind () كما يلي:

 import pandas as pd
from scipy. stats import ttest_ind

#create pandas DataFrame
df = pd. DataFrame ({'method': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',
                              'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'],
                   'score': [71, 72, 72, 75, 78, 81, 82, 83, 89, 91, 80, 81, 81,
                             84, 88, 88, 89, 90, 90, 91]})

#define samples
group1 = df[df[' method ']==' A ']
group2 = df[df[' method ']==' B ']

#perform Welch's t-test
ttest_ind(group1[' score '], group2[' score '], equal_var= False )

Ttest_indResult(statistic=-2.603430460539794, pvalue=0.02014688617423973)

ومن النتيجة يمكننا أن نرى:

  • إحصائية اختبار t: – 2.6034
  • القيمة p: 0.0201

وبما أن القيمة p أقل من 0.05، فإننا نرفض الفرضية الصفرية لاختبار Welch’s t ونستنتج أن هناك أدلة كافية تشير إلى أن الطريقتين تؤديان إلى متوسط درجات اختبار مختلفة.

مثال 3: اختبار t للعينات المقترنة في Pandas

يتم استخدام اختبار t للعينات المقترنة لتحديد ما إذا كان وسطان مجتمعيان متساويان حيث يمكن ربط كل ملاحظة في عينة واحدة بملاحظة في العينة الأخرى.

على سبيل المثال، لنفترض أن الأستاذ يريد معرفة ما إذا كانت طريقتان مختلفتان للدراسة تؤديان إلى متوسط درجات مختلف في الامتحانات.

ولاختبار ذلك، قام بتجنيد 10 طلاب لاستخدام الطريقة (أ) ثم إجراء الاختبار. ثم يتيح لنفس الطلاب العشرة الذين استخدموا الطريقة ب الاستعداد وإجراء اختبار آخر بنفس الصعوبة.

وبما أن جميع الطلاب يظهرون في كلتا العينتين، فيمكننا إجراء اختبار t للعينات المقترنة في هذا السيناريو.

يوضح الكود التالي كيفية إدخال درجات كل طالب في Pandas DataFrame، ثم استخدم وظيفة ttest_rel() الخاصة بمكتبة SciPy لإجراء اختبار t للعينات المقترنة:

 import pandas as pd
from scipy. stats import ttest_rel

#create pandas DataFrame
df = pd. DataFrame ({'method': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',
                              'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'],
                   'score': [71, 72, 72, 75, 78, 81, 82, 83, 89, 91, 80, 81, 81,
                             84, 88, 88, 89, 90, 90, 91]})

#view first five rows of DataFrame
df. head ()

  method score
0 to 71
1 To 72
2 To 72
3 to 75
4 to 78

#define samples
group1 = df[df[' method ']==' A ']
group2 = df[df[' method ']==' B ']

#perform independent two sample t-test
ttest_rel(group1[' score '], group2[' score '])

Ttest_relResult(statistic=-6.162045351967805, pvalue=0.0001662872100210469)

ومن النتيجة يمكننا أن نرى:

  • إحصائية اختبار t: – 6.1620
  • القيمة p: 0.0001

نظرًا لأن القيمة p أقل من 0.05، فإننا نرفض الفرضية الصفرية لاختبار t للعينات المقترنة ونستنتج أن هناك أدلة كافية تشير إلى أن الطريقتين تؤديان إلى متوسط درجات اختبار مختلفة.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في بايثون:

كيفية إجراء اختبار استقلالية مربع كاي في بايثون
كيفية إجراء ANOVA أحادي الاتجاه في بايثون
كيفية إجراء اختبار فيشر الدقيق في بايثون

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *