كيفية إجراء اختبار اتجاه مان كيندال في بايثون
يتم استخدام اختبار اتجاه مان كيندال لتحديد ما إذا كان هناك اتجاه في بيانات السلاسل الزمنية أم لا. هذا اختبار غير معلمي، مما يعني أنه لا توجد افتراضات أساسية حول صحة البيانات.
فرضيات الاختبار هي كما يلي:
H 0 (فرضية العدم): لا يوجد اتجاه في البيانات.
HA (فرضية بديلة): هناك اتجاه موجود في البيانات. (قد يكون هذا اتجاها إيجابيا أو سلبيا)
إذا كانت القيمة p للاختبار أقل من مستوى معين من الأهمية (الاختيارات الشائعة هي 0.10 و0.05 و0.01)، فهناك دليل ذو دلالة إحصائية على وجود اتجاه في البيانات من السلسلة الزمنية.
يشرح هذا البرنامج التعليمي كيفية إجراء اختبار اتجاه مان كيندال في بايثون.
مثال: اختبار اتجاه مان كيندال في بايثون
لإجراء اختبار اتجاه Mann-Kendall في بايثون، سنقوم أولاً بتثبيت حزمة pymannkendall :
pip install pymannkendall
بمجرد تثبيت هذه الحزمة، يمكننا إجراء اختبار اتجاه مان-كيندال على مجموعة بيانات السلاسل الزمنية:
#create dataset data = [31, 29, 28, 28, 27, 26, 26, 27, 27, 27, 28, 29, 30, 29, 30, 29, 28] #perform Mann-Kendall Trend Test import pymannkendall as mk mk. original_test (data) Mann_Kendall_Test(trend='no trend', h=False, p=0.422586268671707, z=0.80194241623, Tau=0.147058823529, s=20.0, var_s=561.33333333, slope=0.0384615384615, intercept=27.692307692)
وإليك كيفية تفسير نتيجة الاختبار:
- الاتجاه : يشير هذا إلى الاتجاه. تتضمن النتيجة المحتملة اتجاهًا متزايدًا أو متناقصًا أو لا يوجد اتجاه.
- h: صحيح إذا كان الاتجاه موجودا. خطأ إذا لم يكن هناك اتجاه.
- p: القيمة p للاختبار.
- z: إحصائية اختبار التطبيع.
- تاو: كيندال تاو.
- الصورة: درجة مان-كيندال
- var_s: الانحراف S
- المنحدر: مقدر Theil-Sen/المنحدر
- الاعتراض: اعتراض خط كيندال-ثيل القوي
القيمة الرئيسية التي نهتم بها هي القيمة p، والتي تخبرنا ما إذا كان هناك اتجاه ذو دلالة إحصائية في البيانات أم لا.
في هذا المثال، القيمة p هي 0.4226 ، وهي لا تقل عن 0.05. ولذلك، لا يوجد اتجاه كبير في بيانات السلاسل الزمنية.
بالإضافة إلى إجراء اختبار اتجاه مان-كيندال، يمكننا إنشاء مخطط خطي سريع باستخدام Matplotlib لتصور بيانات السلاسل الزمنية الفعلية:
import matplotlib. pyplot as plt plt. plot (data)
مرات
من الرسم البياني يمكننا أن نرى أن البيانات متناثرة بعض الشيء، مما يؤكد عدم وجود اتجاه واضح في البيانات.
مصادر إضافية
كيفية رسم سلسلة زمنية في Matplotlib
كيفية إجراء اختبار ديكي فولر المعزز في بايثون
كيفية رسم سلسلة متعددة من Pandas DataFrame