كيفية إجراء اختبار السببية جرانجر في r


يتم استخدام اختبار السببية جرانجر لتحديد ما إذا كانت إحدى السلاسل الزمنية مفيدة في التنبؤ بأخرى أم لا.

يستخدم هذا الاختبار الفرضيات الصفرية والبديلة التالية:

الفرضية الصفرية (H 0 ): السلسلة الزمنية x لا تسبب السلسلة الزمنية y لجرانجر

الفرضية البديلة ( HA ): السلاسل الزمنية x السلاسل الزمنية لجرانجر تسبب y

مصطلح “أسباب جرانجر” يعني أن معرفة قيمة السلسلة الزمنية x بتأخر معين مفيد للتنبؤ بقيمة السلسلة الزمنية y في فترة لاحقة.

ينتج عن هذا الاختبار إحصائية اختبار F مع القيمة p المقابلة. إذا كانت القيمة p أقل من مستوى معين من الأهمية (أي α = 0.05)، فيمكننا رفض فرضية العدم ونستنتج أن لدينا أدلة كافية للتأكيد على أن السلسلة الزمنية x Granger تسبب السلسلة الزمنية y.

لإجراء اختبار Granger-Causality في R، يمكننا استخدام وظيفة grangertest() من الحزمة lmtest ، والتي تستخدم بناء الجملة التالي:

grangertest(x, y, الترتيب = 1)

ذهب:

  • x: السلسلة الأولى
  • y: السلسلة الزمنية الثانية
  • الترتيب: عدد الإزاحات المستخدمة في السلسلة الزمنية الأولى. القيمة الافتراضية هي 1.

يوضح المثال التالي خطوة بخطوة كيفية استخدام هذه الوظيفة عمليًا.

الخطوة الأولى: تحديد السلسلتين الزمنيتين

في هذا المثال، سنستخدم مجموعة بيانات ChickEgg المحملة مسبقًا في الحزمة lmtest. تحتوي قيم مجموعة البيانات هذه على عدد البيض المنتج وكذلك عدد الدجاج في الولايات المتحدة من عام 1930 إلى عام 1983:

 #load lmtest package
library (lmtest)

#load ChickEgg dataset
data(ChickEgg)

#view first six rows of dataset
head(ChickEgg)

     chicken egg
[1,] 468491 3581
[2,] 449743 3532
[3,] 436815 3327
[4,] 444523 3255
[5,] 433937 3156
[6,] 389958 3081

الخطوة الثانية: إجراء اختبار السببية لجرانجر

بعد ذلك، سوف نستخدم الدالة grangertest() لإجراء اختبار سببية Granger لمعرفة ما إذا كان عدد البيض الناتج يتنبأ بالعدد المستقبلي للدجاج. سنقوم بإجراء الاختبار باستخدام ثلاثة إزاحات:

 #perform Granger-Causality test
grangertest(chicken ~ egg, order = 3 , data = ChickEgg)

Granger causality test

Model 1: chicken ~ Lags(chicken, 1:3) + Lags(egg, 1:3)
Model 2: chicken ~ Lags(chicken, 1:3)
  Res.Df Df F Pr(>F)   
1 44                     
2 47 -3 5.405 0.002966 **
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

وإليك كيفية تفسير النتيجة:

  • النموذج 1: يحاول هذا النموذج التنبؤ بعدد الدجاج باستخدام عدد الدجاج في السنوات الثلاث السابقة وعدد البيض في السنوات الثلاث السابقة كمتغيرات تنبؤية.
  • النموذج 2: يحاول هذا النموذج التنبؤ بعدد الدجاج باستخدام عدد الدجاج في السنوات الثلاث السابقة فقط كمتغيرات تنبؤية.
  • F: هذه هي إحصائية اختبار F. وتبين أن 5.405.
  • Pr(>F): هذه هي القيمة p التي تتوافق مع إحصائيات اختبار F. اتضح أنه .002966.

وبما أن القيمة p أقل من 0.05، يمكننا رفض الفرضية الصفرية للاختبار ونستنتج أن معرفة عدد البيض مفيد في التنبؤ بالعدد المستقبلي للدجاج.

الخطوة 3: إجراء اختبار السببية لجرانجر في الاتجاه المعاكس

على الرغم من أننا رفضنا الفرضية الصفرية للاختبار، فمن الممكن في الواقع أن تحدث حالة سببية عكسية. بمعنى آخر، من الممكن أن يتسبب عدد الدجاج في تغيير عدد البيض.

لاستبعاد هذا الاحتمال، نحن بحاجة إلى إجراء اختبار السببية جرانجر في الاتجاه المعاكس، وذلك باستخدام الدجاج كمتغير متنبئ والبيض كمتغير الاستجابة :

 #perform Granger-Causality test in reverse
grangertest(egg ~ chicken, order = 3 , data = ChickEgg)

Granger causality test

Model 1: egg ~ Lags(egg, 1:3) + Lags(chicken, 1:3)
Model 2: egg ~ Lags(egg, 1:3)
  Res.Df Df F Pr(>F)
1 44                 
2 47 -3 0.5916 0.6238

القيمة p للاختبار هي 0.6238. وبما أن هذا لا يقل عن 0.05، فلا يمكننا رفض فرضية العدم. وبعبارة أخرى، فإن عدد الدجاجات لا يتنبأ بعدد البيض في المستقبل.

وهكذا يمكننا أن نستنتج أن معرفة عدد البيض مفيد في التنبؤ بعدد الدجاج في المستقبل.

Add a Comment

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