كيفية إجراء اختبار الارتباط في بايثون (مع مثال)
إحدى طرق قياس العلاقة بين متغيرين هي استخدام معامل ارتباط بيرسون ، الذي يقيس الارتباط الخطي بين متغيرين .
يأخذ دائمًا قيمة بين -1 و1 حيث:
- -1 يشير إلى وجود علاقة خطية سلبية تماما
- 0 يشير إلى عدم وجود علاقة خطية
- 1 يشير إلى وجود علاقة خطية إيجابية تماما
لتحديد ما إذا كان معامل الارتباط ذو دلالة إحصائية، يمكنك حساب درجة t والقيمة p المقابلة.
صيغة حساب درجة t لمعامل الارتباط (r) هي:
ر = ص * √ ن-2 / √ 1-ر 2
يتم بعد ذلك حساب القيمة p باعتبارها القيمة p المقابلة ثنائية الطرف لتوزيع t مع درجات الحرية n-2.
مثال: اختبار الارتباط في بايثون
لتحديد ما إذا كان معامل الارتباط بين متغيرين ذا دلالة إحصائية، يمكنك إجراء اختبار الارتباط في بايثون باستخدام وظيفة بيرسونر من مكتبة SciPy .
تُرجع هذه الدالة معامل الارتباط بين متغيرين بالإضافة إلى القيمة p ثنائية الطرف.
على سبيل المثال، لنفترض أن لدينا الجدولين التاليين في بايثون:
#create two arrays
x = [3, 4, 4, 5, 7, 8, 10, 12, 13, 15]
y = [2, 4, 4, 5, 4, 7, 8, 19, 14, 10]
يمكننا استيراد دالة بيرسونر وحساب معامل ارتباط بيرسون بين الجدولين:
from scipy. stats . stats import pearsonr #calculation correlation coefficient and p-value between x and y pearsonr(x, y) (0.8076177030748631, 0.004717255828132089)
وإليك كيفية تفسير النتيجة:
- معامل ارتباط بيرسون (ص): 0.8076
- القيمة p على الوجهين: 0.0047
ومعامل الارتباط قريب من 1، وهذا يخبرنا بوجود ارتباط إيجابي قوي بين المتغيرين.
وبما أن القيمة p المقابلة أقل من 0.05، نستنتج أن هناك علاقة ذات دلالة إحصائية بين المتغيرين.
لاحظ أنه يمكننا أيضًا استخراج معامل الارتباط الفردي والقيمة p من دالة بيرسون :
#extract correlation coefficient (rounded to 4 decimal places) r = round(pearsonr(x, y)[ 0 ], 4) print (r) 0.8076 #extract p-value (rounded to 4 decimal places) p = round(pearsonr(x, y)[ 1 ], 4) print (p) 0.0047
تعد قراءة هذه القيم أسهل قليلاً مقارنة بمخرجات وظيفة pearsonr الأصلية.
مصادر إضافية
توفر البرامج التعليمية التالية معلومات إضافية حول معاملات الارتباط:
مقدمة لمعامل ارتباط بيرسون
ما الذي يعتبر ارتباطًا “قويًا”؟
الفرضيات الخمس لارتباط بيرسون