البرمجة بلغة Rالتحليل الإحصائيعلم النفس التجريبي

كيفية إجراء اختبار الأشواط في R

دليل أكاديمي مفصل يشرح كيفية إجراء اختبار الأشواط (Runs Test) للتحقق من العشوائية الإحصائية في لغة البرمجة R وتطبيقاته في الأبحاث السلوكية والنفسية.

تاريخ النشر

تُعد مسألة التحقق من عشوائية البيانات واستقلالية المشاهدات المتتابعة ركيزة أساسية لا غنى عنها في منهجية البحث العلمي والتحليل الإحصائي المتقدم. في العديد من العلوم التطبيقية، مثل علم النفس التجريبي، والعلوم السلوكية، والاقتصاد القياسي، والبحوث الطبية الحيوية، يعتمد الباحثون على فرضية ضمنية مفادها أن الملاحظات التي تم جمعها عبر الزمن أو عبر تسلسل اختباري معين قد نشأت عن مسار عشوائي خالص ومستقل بذاته، دون أن تتأثر القيم اللاحقة بتلك السابقة. غير أن التسليم بصحة هذه الفرضية دون إخضاعها للفحص التجريبي الرصين قد يقود إلى استنتاجات مضللة ونتائج زائفة؛ حيث إن وجود أنماط دورية خفية، أو ارتباطات ذاتية غير ملحوظة، أو ميول تكتلية واضحة، من شأنه أن ينسف الصلاحية الإحصائية للاختبارات البارامترية التقليدية ويفرغ النماذج التنبؤية من دقتها النظرية والتطبيقية.

يقف اختبار فالد-وولفويتز للأشواط (Wald-Wolfowitz Runs Test) كواحد من أعرق وأقوى الاختبارات اللامعلمية المصممة خصيصاً لاختبار فرضية العشوائية في تسلسل البيانات ذات الحدين أو المتغيرات المستمرة المحولة. يكمن جوهر هذا الاختبار في قدرته الفريدة على استكشاف البنية الترتيبية للمشاهدات دون الاعتماد على افتراضات مقيدة حول شكل التوزيع الاحتمالي للمجتمع الأصلي، مما يمنحه حصانة فائقة ضد تأثيرات الالتواء والتشوه في البيانات. ومع التطور الهائل في بيئات الحوسبة الإحصائية، باتت لغة البرمجة R المنصة الأكاديمية والمهنية المثلى لإجراء هذا الاختبار بدقة متناهية، بفضل حزمها البرمجية المتخصصة وأدواتها المرنة التي تتيح التعامل مع البيانات المعقدة وتحليلها بيسر واقتدار.

يهدف هذا الدليل المرجعي الشامل إلى تقديم معالجة أكاديمية معمقة لاختبار الأشواط في بيئة R، متناولاً الجوانب النظرية والرياضية التأسيسية، وصياغة الفرضيات الإحصائية بدقة، وخطوات التنفيذ البرمجي عبر الحزم الرائدة مثل snpar وrandtests وtseries. كما يستعرض المقال أساليب التفسير الإحصائي الدقيق للمخرجات وفق معايير جمعية علم النفس الأمريكية (APA)، وتطبيقات الاختبار العملية في كشف التزييف والتخمين السلوكي، مع تقديم حلول منهجية للمشكلات التقنية مثل معالجة القيم المتطابقة وتأثير نقطة القطع، وصولاً إلى مقارنة الاختبار بالبدائل الإحصائية المتقدمة وتطبيق محاكاة مونت كارلو لتقدير القوة الإحصائية.

1. مقدمة شاملة حول اختبار الأشواط (Runs Test) وأهميته الإحصائية

1.1 تعريف اختبار الأشواط الإحصائي وسياقه التاريخي

يعود الفضل في تطوير اختبار الأشواط إلى العالمين أبراهام فالد (Abraham Wald) وجاكوب وولفويتز (Jacob Wolfowitz) اللذين قدما هذا الاختبار في مطلع أربعينيات القرن العشرين كأداة لا معلمية ثورية لفحص استقلالية وعشوائية المتواليات الإحصائية. صُمم الاختبار في الأصل للإجابة عن سؤال جوهري: هل تتابع الأحداث أو القيم في عينة مرتبة ترتيباً زمنياً أو تسلسلياً يتبع مساراً عشوائياً بحتاً، أم أنه يعكس نمطاً غير عشوائي يتمثل في النزوع نحو التكتل (Clustering) أو التناوب المفرط (Over-alternation)؟ وقد أسس هذا الابتكار الرياضي لمرحلة جديدة في الإحصاء الاستدلالي اللامعلمي، حيث تحول التركيز من تقدير المعالم المركزية كالمتوسط والتباين إلى فحص البنية الترتيبية الديناميكية للبيانات.

يُعرف “الشوط” (Run) في الأدبيات الإحصائية بأنه متتالية غير منقطعة من المشاهدات أو الرموز المتطابقة التي تنتمي إلى الفئة ذاتها، وتكون هذه المتتالية مسبوقة ومتبوعة برمز من فئة مختلفة أو بنهاية السلسلة الإحصائية. على سبيل المثال، في سلسلة ثنائية ناتجة عن إلقاء قطعة نقدية ممثلة بالرموز (ص، ص، ص، ك، ك، ص، ك، ك، ك، ك)، نلاحظ وجود أربعة أشواط متمايزة: الشوط الأول يتكون من ثلاثة أصداء للرمز (ص)، يليه الشوط الثاني برمزين (ك)، ثم الشوط الثالث برمز واحد (ص)، وأخيراً الشوط الرابع بأربعة رموز (ك). يعتمد المنطق الاستدلالي للاختبار على مقارنة العدد الفعلي للأشواط المرصودة في العينة بالعدد المتوقع رياضياً تحت افتراض صحة الفرضية الصفرية القائلة بالعشوائية التامة.

تتجلى الأهمية المنهجية لاختبار الأشواط في قدرته على اختبار استقلالية المشاهدات وتوزيعها الزمني دون الحاجة إلى افتراض معرفة سابقة بالتوزيع الاحتمالي للبيانات. في التصاميم التجريبية الطولية والمستعرضة، يُعد التحقق من غياب الارتباط التسلسلي بين الملاحظات شرطاً حاسماً لسلامة النماذج الإحصائية؛ إذ إن انتهاك هذا الاستقلال يرفع معدل الخطأ من النوع الأول ويؤدي إلى رفض خاطئ للفرضيات الصفرية. يوفر اختبار الأشواط وسيلة اختبارية صارمة تكشف عن الانحرافات الخفية في تواتر الملاحظات، سواء كان ذلك ناتجاً عن تدخلات تجريبية غير مضبوطة، أو انحيازات في أدوات القياس، أو تأثيرات تراكمية تعاقبية في تجميع البيانات.

1.2 أهمية التحقق من العشوائية في الدراسات النفسية والسلوكية

تحتل العشوائية مكانة محورية في القياس النفسي والتجريب السلوكي، حيث يعتمد تفسير العديد من الظواهر النفسية على افتراض خلو استجابات المفحوصين من الأنماط الآلية أو التكلف غير الواعي. في بيئات القياس النفسي، يُستخدم اختبار الأشواط كأداة تشخيصية فعالة للكشف عن أنماط الاستجابة غير الجادة أو المتحيزة (Response Bias) في الاستبيانات ومقاييس التقرير الذاتي. على سبيل المثال، عندما يقوم أحد المستجيبين بالإجابة بنمط متكرر كاختيار الخيار الأوسط دائماً أو التناوب المتعمد بين الموافقة والرفض، يظهر اختبار الأشواط انخفاضاً أو ارتفاعاً غير طبيعي في عدد الأشواط، مما يشير إلى غياب الصدق في الاستجابة ويدعو لاستبعاد تلك المشاهدات لتفادي تشويه البيانات المجمعة.

يمتد الدور المنهجي للاختبار إلى تصميم التجارب المعملية والسريرية؛ حيث يتعين على الباحثين في علم النفس العصبي والمعرفي التحقق من أن ترتيب تقديم المحفزات التجريبية (مثل الصور، النغمات، أو المهام الإدراكية) يتمتع بعشوائية حقيقية تمنع حدوث تأثيرات التهيئة (Priming Effects) أو التعلم التراكمي المسبق لدى المشارك. بالإضافة إلى ذلك، يُستخدم الاختبار في التجارب الإكلينيكية المعشاة لتدقيق بروتوكولات التخصيص العشوائي للمرضى بين المجموعات العلاجية والمجموعات الضابطة، والتأكد من عدم وجود انحياز تسلسلي ناجم عن رغبة القائمين على التجربة في توجيه فئات معينة من المشاركين نحو علاج محدد.

في إطار تحليل السلاسل الزمنية السلوكية والتسجيلات البيومترية المستمرة (مثل معدل ضربات القلب، حركة العين، وتخطيط كهربية الدماغ)، يمثل اختبار الأشواط أداة أولية لفحص البواقي (Residuals) الناتجة عن النماذج الخطية والنفس-حركية. يساعد هذا الإجراء الباحثين في التأكد من أن النماذج قد استوعبت كافة التأثيرات المنظمة للمتغيرات المستقلة، وأن ما تبقى من تباين لا يتعدى كونه ضوضاء بيضاء عشوائية خالية من أي ارتباط ذاتي تسلسلي. يضمن هذا التدقيق الإحصائي عدم الوقوع في مغالطة تفسير الاتجاهات الزائفة التي قد تنتج عن تعب المفحوصين، أو تقلبات الانتباه، أو التغيرات الفسيولوجية المصاحبة لطول فترة الاختبار التجريبي.

1.3 طبيعة الاختبار اللامعلمي ومزاياه مقارنة بالاختبارات المعلمية

ينتمي اختبار فالد-وولفويتز للأشواط إلى عائلة الاختبارات الإحصائية اللامعلمية أو الخالية من التوزيع (Distribution-Free Tests)، وهي فئة من الأدوات التحليلية التي تتميز بعدم اشتراط انحدار البيانات من توزيع احتمالي محدد سلفاً كالتوزيع الطبيعي الغاوسي. في حين تفترض الاختبارات المعلمية استيفاء شروط بالغة الصرامة كاعتدالية التوزيع، وتجانس التباين، والخطية، يعمل اختبار الأشواط بناءً على الترتيب والتعاقب الموضعي للمشاهدات فقط. هذه الخاصية تمنحه مرونة استثنائية في التطبيقات السيكومترية والاجتماعية التي نادراً ما تحقق فيها البيانات الميدانية متطلبات التوزيع الطبيعي بدقة تامة.

تتجلى الميزة النسبية لاختبار الأشواط في قدرته العالية على معالجة مختلف مستويات القياس؛ إذ يمكن تطبيقه مباشرة على المتغيرات الاسمية الفئوية ثنائية المستوى، كما يمكن تطبيقه على البيانات الترتيبية والبيانات المستمرة الكمية بعد تصنيفها عبر نقطة قطع معيارية كالمتوسط أو الوسيط. هذه المرونة تسمح للباحث بتحويل المشكلات التحليلية المعقدة في السلاسل العددية المستمرة إلى سلاسل ثنائية قابلة للتتبع المنطقي، مما يتيح اختبار فرضيات ديناميكية تتعلق بالصعود والهبوط أو التباين فوق خط الأساس ودونه، دون المساس بالجوهر الإحصائي للظاهرة المدروسة.

يتميز الاختبار بمقاومته الفائقة للقيم المتطرفة والشاذة (Outliers) التي غالباً ما تدمر كفاءة الاختبارات المعلمية كالارتباط الذاتي لبيرسون أو اختبارات التباين. بما أن اختبار الأشواط يتعامل مع تصنيف الملاحظات فوق أو تحت العتبة المحددة وليس مع القيم العددية المطلقة، فإن وجود قيمة متطرفة شديدة لن يغير من احتساب الشوط إلا بمقدار نقطة واحدة فقط كأي قيمة طبيعية أخرى. هذه المناعة الإحصائية تجعل الاختبار خياراً آمناً وموثوقاً في المراحل الاستكشافية لتحليل البيانات، وتمنح الباحثين ثقة مضاعفة في نتائجهم الاستدلالية عند التعامل مع بيئات تجريبية مليئة بالضوضاء والتقلبات الحركية والنفسية العالية.

2. الأسس النظرية والرياضية لاختبار الأشواط

2.1 المعادلات الرياضية لحساب عدد الأشواط المتوقع

يقوم البناء الرياضي لاختبار الأشواط على التحليل التوافقي التبادلي (Combinatorial Analysis) لسلسلة مكونة من حجم إجمالي $N$، تتألف من نوعين متميزين من العناصر، نرمز لعدد عناصر الفئة الأولى بالرمز $n_1$ ولعدد عناصر الفئة الثانية بالرمز $n_2$، بحيث يكون المجموع الكلي $N = n_1 + n_2$. تحت افتراض صحة الفرضية الصفرية التي تنص على أن كافة التباديل الممكنة لترتيب هذه العناصر البالغ عددها $\binom{N}{n_1}$ متساوية الاحتمال، فإن العدد الإجمالي للأشواط المرصودة، والذي سنرمز له بالحرف $R$، يمثل متغيراً عشوائياً متقطعاً يخضع لتوزيع احتمالي محدد بدقة.

يُشتق المتوسط الحسابي المتوقع لعدد الأشواط $\mu_R$ أو $E(R)$ تحت شرط العشوائية التامة من خلال المعادلة التوافقية الصارمة التالية:

$$\mu_R = E(R) = \frac{2 n_1 n_2}{N} + 1$$

توضح هذه المعادلة أن القيمة المتوقعة للأشواط تعتمد حصراً على تكرار كل فئة من الفئتين والعدد الكلي للمشاهدات. عندما تتساوى الفئتان تماماً ($n_1 = n_2 = N/2$)، يصل التوقع الرياضي لعدد الأشواط إلى قيمته القصوى النظرية وهي $(N/2) + 1$، مما يعكس أقصى درجة من التنوع التبادلي الممكن بين الحالات المتسلسلة.

أما التباين النظري لتوزيع عدد الأشواط $\sigma_R^2$ أو $Var(R)$، فيتم حسابه بدقة عبر الصيغة الرياضية الآتية:

$$\sigma_R^2 = Var(R) = \frac{2 n_1 n_2 (2 n_1 n_2 – N)}{N^2 (N – 1)}$$

ويمثل الانحراف المعياري $\sigma_R$ الجذر التربيعي لهذه القيمة. عند تعامل الباحث مع عينات كبيرة الحجم (حيث يتجاوز كل من $n_1$ و$n_2$ القيمة 10 أو 20)، يتقارب توزيع المتغير العشوائي $R$ تقارباً وثيقاً من التوزيع الطبيعي المعياري بفضل مبرهنة النهاية المركزية. وفي هذه الحالة، يتم حساب الإحصائي المعياري الموزون $Z$ مع إدخال تصحيح الاستمرارية (Continuity Correction) لتعويض تحويل المتغير المتقطع إلى متصل وفق الصيغة:

$$Z = \frac{R – \mu_R \pm 0.5}{\sigma_R}$$

حيث يُضاف $0.5$ إلى البسط عندما يكون $R \mu_R$.

2.2 الفرق بين الحساب الدقيق والحساب التقريبي للقيمة الاحتمالية

ينقسم النهج الاستدلالي في اختبار الأشواط إلى مسارين رئيسيين بناءً على حجم العينة المتاحة للتحليل: الاختبار الدقيق (Exact Test) والاختبار التقريبي القائم على التوزيع الطبيعي (Asymptotic/Approximate Test). في العينات الصغيرة، حيث يكون عدد المشاهدات في إحدى المجموعتين $n_1$ أو $n_2$ أقل من أو يساوي 10 إلى 20 مشاهدة، تفقد التوزيعات التقريبية دقتها وتصبح مائلة نحو تشويه القيمة الاحتمالية، مما يرفع احتمالية ارتكاب خطأ إحصائي من النوع الأول أو الثاني. في هذا النطاق الضيق، يجب استخدام التوزيع الاحتمالي الدقيق المحسوب توافقياً لإيجاد دالة الكثافة الاحتمالية التراكمية الدقيقة للعدد المرصود من الأشواط.

تُحسب الاحتمالية الدقيقة للحصول على عدد أشواط فردي أو زوجي تحت الفرضية الصفرية باستخدام القوانين التوافقية الكلاسيكية. إذا كان عدد الأشواط $r$ عدداً زوجياً ($r = 2k$)، فإن دالة الاحتمال الدقيقة تُصاغ رياضياً كالآتي:

$$P(R = 2k) = \frac{2 \binom{n_1 – 1}{k – 1} \binom{n_2 – 1}{k – 1}}{\binom{N}{n_1}}$$

بينما إذا كان عدد الأشواط $r$ عدداً فردياً ($r = 2k + 1$)، فإن دالة الاحتمال تأخذ الصيغة التوافقية التالية:

$$P(R = 2k + 1) = \frac{\binom{n_1 – 1}{k} \binom{n_2 – 1}{k – 1} + \binom{n_1 – 1}{k – 1} \binom{n_2 – 1}{k}}{\binom{N}{n_1}}$$

تتيح هذه المعادلات للبرمجيات الإحصائية في لغة R حساب القيمة الاحتمالية الدقيقة (Exact p-value) من خلال تجميع الاحتمالات المتطرفة، مما يوفر حكماً قاطعاً لا تشوبه أخطاء التقريب الحسابي.

مع نمو حجم العينة وتجاوز الحدود الحرجة الصغرى، تصبح العمليات التوافقية لحساب المضروب التوافقي (Factorials) مكلفة حاسوبياً وضخمة جداً، وفي الوقت نفسه تتطابق دالة التوزيع التراكمي المتقطعة تطابقاً شبه تام مع المنحنى الغاوسي الأملس. يبرر هذا التحول الانتقال الواثق إلى إحصائية $Z$ التقريبية. غير أن إغفال تطبيق تصحيح الاستمرارية في العينات المتوسطة الحجم (بين 20 و40 مفردة) قد يقود إلى تضخيم زائف في قيمة $Z$ المحسوبة، مما يقلل من القيمة الاحتمالية ويدفع الباحث لرفض فرضية العشوائية دون مبرر إحصائي سليم.

2.3 أنواع الأشواط وكيفية تصنيف البيانات المستمرة

لا يقتصر تطبيق اختبار الأشواط على البيانات المصنفة فئوياً في أصلها، بل يمتد بمرونة فائقة ليعالج المتغيرات الرقمية المستمرة عبر استراتيجيات تصنيفية دقيقة تحول المتواليات الكمية إلى متجهات ثنائية الرموز. الاستراتيجية الأكثر شيوعاً ورسوخاً في الأدبيات الإحصائية هي “التصنيف الموضعي حول خط الأساس”، وتعرف باختبار الأشواط حول الوسيط (Runs above and below the Median) أو حول المتوسط الحسابي. في هذه الطريقة، يتم استبدال كل قيمة عددية برمز ثنائي إيجابي (+) إذا كانت القيمة أعلى من الوسيط، أو برمز سلبي (-) إذا كانت القيمة أدنى منه، مع استبعاد أو معالجة القيم المساوية لخط الأساس بدقة منهجية.

يمثل اختبار “أشواط الصعود والهبوط” (Runs Up and Down) نمطاً متقدماً آخر من التحليل اللامعلمي للبيانات المتسلسلة زمنياً، ويهدف بالأساس إلى رصد الاتجاهات التراكمية (Trends) بدلاً من فحص التغيرات حول نقطة مركزية ثابتة. في هذا الإجراء، لا يُقارن المتغير بخط أساس ثابت، بل تتم مقارنة كل قيمة عددية $X_t$ بالقيمة التي تسبقها مباشرة $X_{t-1}$؛ فإذا كانت $X_t > X_{t-1}$ يُسجل الرمز (+)، وإذا كانت $X_t < X_{t-1}$ يُسجل الرمز (-). ينتج عن هذا التحويل سلسلة ثنائية ذات طول يساوي $N – 1$، وتخضع لمعادلات توقع وتباين معدلة تأخذ بعين الاعتبار الاعتماد الرياضي المتبادل الحتمي الناشئ عن مقارنة العناصر المتجاورة.

يسمح تحويل المتغيرات المستمرة إلى متواليات ثنائية (Binary Sequences) باكتشاف أنماط هيكلية خفية قد تعجز الاختبارات الخطية التقليدية عن رصدها. فالتحويل الثنائي يركز على الاتجاه والديناميكية التتابعية للبيانات بدلاً من قيمها المطلقة، مما يجعله حساساً للظواهر التذبذبية المعقدة، والتحولات المفاجئة في المستويات التشغيلية، والانتقالات الطورية في السلوك البشري أو الأنظمة البيولوجية، دون أن يتأثر بالشكل العام لتوزيع البيانات أو مقياس الرسم المستخدم في القياس.

3. صياغة الفرضيات الإحصائية لاختبار الأشواط

3.1 الفرضية الصفرية (H0) ودلالاتها

تُعد الصياغة الدقيقة للفرضية الصفرية ($H_0$) في اختبار الأشواط حجر الزاوية الذي يرتكز عليه التفسير الاستدلالي للنتائج؛ إذ تنص الفرضية الصفرية رياضياً ومنهجياً على أن: “تتابع المشاهدات في السلسلة المدروسة ناتج عن عملية توليد عشوائية متماثلة ومستقلة إحصائياً (Independent and Identically Distributed – i.i.d)”. تعني هذه الصياغة أن ظهور أي فئة أو قيمة معينة في موقع محدد داخل المتتالية لا يوفر أي معلومة احتمالية مسبقة حول طبيعة المشاهدة التالية، وأن الترتيب الملحوظ ليس إلا واحداً من بين آلاف التباديل الممكنة التي كان يمكن أن تفرزها الصدفة الخالصة.

تقتضي الفرضية الصفرية انعدام أي نوع من أنواع الارتباط الذاتي (Autocorrelation) أو التأثير التاريخي التراكمي بين عناصر السلسلة. من منظور نظرية الاحتمالات، إذا كانت السلسلة مكونة من حالتين $A$ و$B$، فإن الفرضية الصفرية تفترض أن الاحتمال الشرطي لظهور الحالة $A$ في الخطوة $t$ مع العلم بظهور الحالة $A$ في الخطوة $t-1$ يساوي الاحتمال الهامشي غير الشرطي للحدث نفسه:

$$P(X_t = A mid X_{t-1} = A) = P(X_t = A)$$

وهذا يعني أن النظام موضوع القياس لا يمتلك أي “ذاكرة” تنقل التأثيرات عبر الزمن أو التتابع التجريبي.

في السياق العملي والتطبيقي للتجارب المعملية والنفسية، فإن قبول أو الفشل في رفض الفرضية الصفرية يعكس سلامة الإجراءات التجريبية وتطابقها مع معايير العشوائية المنشودة. في بروتوكولات الاختبارات الإدراكية، يشير عدم رفض الفرضية الصفرية إلى أن تسلسل المحفزات المطبق على المشاركين لم يولد توقعات استباقية لديهم، وأن أدائهم المسجل يمثل استجابة فورية ونقية للمثيرات الفردية دون تشويش ناجم عن النمط الترتيبي، مما يمنح الباحثين مسوغاً إحصائياً قوياً لاعتماد المشاهدات كبيانات مستقلة مؤهلة للتحليلات الإحصائية المتقدمة التالية.

3.2 الفرضية البديلة (Ha) ومحددات الاختبار أحادي وثنائي الطرف

تتخذ الفرضية البديلة ($H_a$ أو $H_1$) صيغاً متعددة تتحدد تبعاً للفرضيات النظرية التي يسعى الباحث لاختبارها ولطبيعة التشوه الإحصائي المتوقع في البيانات. في الصيغة الأكثر عمومية وشمولاً، وهي الفرضية ثنائية الطرف (Two-sided Alternative)، تنص الفرضية البديلة على أن: “تسلسل المشاهدات لا يتبع مساراً عشوائياً”، مما يعني أن عدد الأشواط الفعلي $R$ يختلف اختلافاً جوهرياً ودالاً إحصائياً عن العدد المتوقع $\mu_R$، سواء بالزيادة أو النقصان، دون تخصيص مسبق لاتجاه هذا الاختلاف في الفرضية البحثية.

تكتسب الفرضيات أحادية الطرف (One-sided Alternatives) أهمية تطبيقية بالغة عند وجود توقعات نظرية توجه مسار التحليل، وتأتي في اتجاهين متمايزين منهجياً:

  • فرضية التكتل أو النزوع النمطي (Alternative = “less”): تنص على أن عدد الأشواط الفعلي أقل بكثير من المتوقع بالصدفة ($R < \mu_R$). يشير هذا الانحراف إلى ميل المشاهدات المتشابهة إلى البقاء معاً في فترات طويلة ممتدة، وهو ما يُعرف في الأدبيات بالتكتل (Clustering)، أو الارتباط الذاتي الإيجابي (Positive Serial Correlation)، أو وجود اتجاه زمني عام (Trend) يسحب البيانات باتجاه استجابة واحدة لفترة متصلة.
  • فرضية التناوب المفرط أو التردد العالي (Alternative = “greater”): تنص على أن عدد الأشواط الفعلي أكبر بكثير من المتوقع إحصائياً ($R > \mu_R$). يدل هذا النمط على وجود تقلب مستمر وتذبذب سريع بين الحالات، حيث تتبدل الرموز أو القيم بشكل منهجي دوري يفوق ما تنتجه العشوائية الطبيعية، وهو ما يمثل ارتباطاً ذاتياً سالباً (Negative Serial Correlation) غالباً ما ينتج عن التكلف البشري في التصنيع العشوائي أو التذبذبات التصحيحية المفرطة.

يتطلب الاختيار بين الفرضيات الأحادية والثنائية تبريراً نظرياً صارماً قبل الشروع في فحص البيانات؛ فاختيار الفرضية أحادية الطرف يركز القوة الإحصائية في طرف واحد من التوزيع، مما يرفع من حساسية الاختبار لاكتشاف النمط المحدد، لكنه في الوقت ذاته يعمي الباحث تماماً عن رصد أي تشوه يحدث في الاتجاه المعاكس. لذلك، توصي المعايير المنهجية الصارمة باستخدام الاختبار ثنائي الطرف افتراضياً، ما لم تكن هناك أدبيات تجريبية سابقة راسخة تحتم البحث عن اتجاه انحراف محدد بعينه.

3.3 مستويات الدلالة الإحصائية وقواعد اتخاذ القرار

يرتكز اتخاذ القرار الإحصائي في اختبار الأشواط على موازنة احتمالية بين البيانات التجريبية المرصودة والنموذج النظري للفرضية الصفرية، وذلك من خلال تحديد مستوى الدلالة الإحصائية المعياري ألفا ($\alpha$). يُحدد الباحثون عادة هذا المستوى عند عتبة $0.05$ في معظم البحوث الاجتماعية والسلوكية، مع اللجوء إلى عتبات أكثر صرامة مثل $0.01$ أو $0.001$ في البيئات الإكلينيكية الحساسة أو عند إجراء مقارنات متعددة متزامنة، لتقليص مخاطر الوقوع في الخطأ الإحصائي من النوع الأول (رفض فرضية العشوائية وهي صحيحة).

تتم عملية اتخاذ القرار بمقارنة القيمة الاحتمالية المحسوبة ($p\text{-value}$) بمستوى الدلالة $\alpha$ المختار مسبقاً:

  • إذا كانت $p\text{-value} le \alpha$: يتم رفض الفرضية الصفرية ($H_0$) لصالح الفرضية البديلة، ويستنتج الباحث وجود دليل إحصائي كافٍ يثبت أن تسلسل البيانات غير عشوائي وينطوي على نمط هيكلي (سواء كان تكتلاً أو تناوباً مفرطاً بحسب اتجاه الإحصائي).
  • إذا كانت $p\text{-value} > \alpha$: يفشل الباحث في رفض الفرضية الصفرية، ويُعتبر النمط المتسلسل للبيانات متوافقاً مع توقعات الصدفة والعشوائية المستقلة، مع التأكيد المنهجي على أن ذلك لا يمثل إثباتاً قاطعاً للعشوائية بل غياباً للدليل على انتهاكها.

إلى جانب القيمة الاحتمالية، يُعد فحص إحصائية $Z$ المحسوبة ومعاملات حجم الأثر أمراً جوهرياً لتقييم جسامة الانحراف عن العشوائية. فالقيم المعيارية لـ $Z$ التي تتجاوز النطاق الحرج $[-1.96, +1.96]$ عند مستوى ثقة $95%$ توفر مؤشراً بصرياً ورياضياً سريعاً على خروج السلسلة عن السلوك المتوقع. كما أن بناء فترات الثقة لعدد الأشواط يعزز من متانة التقرير العلمي ويزود القارئ بنطاق تقديري دقيق لتقلبات العينة قيد الدراسة.

4. إعداد وتجهيز بيئة العمل في لغة البرمجة R

4.1 تثبيت واستدعاء الحزم البرمجية الأساسية

توفر شبكة الأرشيف الشاملة للغة R (CRAN) منظومة متكاملة من الحزم البرمجية المتخصصة في الاختبارات اللامعلمية وتحليل السلاسل الزمنية، وتبرز حزمة snpar كواحدة من أكثر الحزم مرونة ودقة في تنفيذ اختبار الأشواط اللامعلمي. لتجهيز بيئة العمل الإحصائية داخل منصة RStudio أو الطرفية البرمجية، يتعين أولاً تثبيت الحزم الأساسية والمساعدة عبر أوامر التثبيت القياسية التي تتكفل بجلب الحزم وتبعياتها البرمجية تلقائياً من المستودعات الرسمية.

تتكامل حزمة snpar مع حزم رديفة فائقة الأهمية مثل حزمة randtests التي توفر خيارات تطبيقية متقدمة لاختبارات العشوائية، وحزمة tseries المصممة خصيصاً لتحليل السلاسل الزمنية الاقتصادية والسلوكية. يتم تثبيت هذه الحزم واستدعاؤها إلى جلسة العمل البرمجية عبر الأوامر التالية المنفذة في R:

install.packages("snpar")
install.packages("randtests")
install.packages("tseries")
library(snpar)
library(randtests)
library(tseries)

ينبغي على المحلل الإحصائي التحقق الدوري من توافق إصدارات الحزم مع إصدار لغة R المثبت على الحاسوب باستخدام الدالة sessionInfo(). يضمن هذا الإجراء البرمجي تفادي أي تعارضات غير متوقعة في بنية الدوال الرياضية، ويحفظ اتساق العمليات الحسابية وتطابق النتائج عبر المنصات الحوسبية المختلفة، وهو شرط منهجي صارم لإرساء مبادئ القابلية للتكرار العلمي (Reproducibility) في البحوث المعاصرة.

4.2 هيكلة البيانات وتحويلها إلى متجهات مناسبة للتحليل

يتطلب إجراء اختبار الأشواط في R إعداد البيانات في بنية متجهية أحادية البعد (One-dimensional Vector) تمثل بدقة الترتيب التسلسلي الزمني أو الإجرائي للمشاهدات. يقبل الاختبار مدخلات رقمية مستمرة (Numeric Vectors)، أو متجهات ثنائية الحالة مكونة من عوامل اسمية (Factors) أو قيم منطقية (Logical Vectors). يُعد الحفاظ على الترتيب الأصلي للبيانات أمراً مصيرياً؛ إذ إن أي إعادة ترتيب أو فرز تصاعدي/تنازلي لمصفوفة البيانات يؤدي حتماً إلى تدمير البنية الزمنية وفقدان القدرة على تقييم العشوائية الحقيقية.

تمثل القيم المفقودة (Missing Values – NA) تحدياً تقنياً ومنهجياً مؤثراً في متواليات الأشواط؛ حيث إن وجود قيمة مفقودة في منتصف السلسلة يؤدي إلى كسر الاتصال التسلسلي بين الملاحظات، مما قد يشوه تعداد الأشواط الفعلي. توفر بيئة R أدوات فحص وتصفية دقيقة، ويُفضل دوماً استكشاف مواضع الفقد ومعالجتها قبل تمرير المتجه لدوال الاختبار. يمكن استبعاد القيم المفقودة صراحة باستخدام الدالة na.omit() مع توثيق ذلك منهجياً في تقرير البحث، أو فحص هيكل المتجه ونوعه عبر الدوال الاستكشافية القياسية str(data_vector) وis.vector(data_vector) لضمان جاهزية البيانات للتحليل.

عند التعامل مع أطر البيانات المركبة (Data Frames) المستوردة من برامج خارجية مثل SPSS أو ملفات Excel، يجب استخراج المتغير المستهدف كمتجه نقي وتجريده من السمات الإضافية التي قد تعيق تنفيذ الدوال الرياضية. يضمن استخدام دوال التحويل الصريح مثل as.numeric() أو as.factor() توجيه دوال الاختبار اللامعلمية للتعامل مع البيانات وفق طبيعتها الإحصائية المقصودة بدقة متناهية ودون غموض برمجي.

4.3 إعداد بذور التوليد العشوائي لضمان قابلية إعادة الإنتاج

تحظى قابلية إعادة الإنتاج (Reproducibility) باهتمام استثنائي في الأوساط الأكاديمية والبحثية الحديثة، حيث يُلزم الباحثون بتقديم شفرات برمجية تفرز النتائج ذاتها بدقة عند إعادة تشغيلها من قبل مراجعين مستقلين. عند إجراء محاكاة للبيانات العشوائية، أو توليد متجهات مقارنة معملية لاختبار كفاءة دالة الأشواط، يجب ضبط مولد الأرقام شبه العشوائية المدمج في R عبر دالة ضبط البذور الإحصائية set.seed().

تقوم الدالة set.seed(seed_value) بتثبيت النقطة الابتدائية للخوارزمية الحسابية المسؤولة عن توليد التوزيعات العشوائية، مما يضمن الحصول على السلسلة ذاتها من الأرقام في كل مرة يُنفذ فيها الكود. على سبيل المثال، يتيح الكود التالي إنشاء سيناريوهين متناقضين للمقارنة التطبيقية: الأول يمثل متتالية عشوائية حقيقية، والثاني يمثل متتالية ممنهجة تعاني من التكتل الواضح:

set.seed(12345)
random_series <- sample(c(0, 1), size = 100, replace = TRUE)
clustered_series <- c(rep(0, 25), rep(1, 50), rep(0, 25))

يسهم التوثيق البرمجي للبذور الإحصائية وإتاحة الشيفرات المصدرية عبر منصات العلوم المفتوحة مثل Open Science Framework (OSF) ومستودعات GitHub في ترسيخ الشفافية المنهجية، وتمكين المجتمع العلمي من التحقق من سلامة الفرضيات واستقرار خوارزميات اختبار الأشواط المطبقة على البيانات السلوكية والنفسية المنشورة.

5. الطريقة الأولى: إجراء اختبار الأشواط باستخدام حزمة snpar

5.1 الصياغة البرمجية للدالة runs.test ومعاملاتها

تُعد الدالة runs.test() المدمجة في حزمة snpar التطبيق البرمجي الكلاسيكي الأكثر تطابقاً مع الأصول الرياضية لاختبار فالد-وولفويتز في بيئة R. تتميز هذه الدالة ببساطة صيغتها البرمجية وقوتها التحليلية، وتأتي بالصيغة التكليفية الأساسية التالية:

runs.test(x, exact = FALSE, alternative = c("two.sided", "less", "greater"))

يقبل المعامل الأساسي x متجهاً رقمياً من القيم المتسلسلة. عند تمرير متجه مستمر، تقوم الدالة آلياً بحساب الوسيط الحسابي للبيانات كنقطة قطع داخلية، وتصنف المشاهدات إلى ما فوق وما دون الوسيط. يتيح المعامل المنطقي exact للمحلل التحكم في طريقة حساب القيمة الاحتمالية؛ فعند ضبطه على exact = TRUE، تستدعي الدالة الخوارزميات التوافقية لحساب التوزيع الاحتمالي الدقيق لعدد الأشواط، وهو خيار مثالي للعينات الصغيرة الحجم ($N le 30$)، في حين أن الإعداد الافتراضي exact = FALSE يطبق التقريب الطبيعي التقاربي المعزز بتصحيح الاستمرارية للعينات الكبيرة.

يتحكم المعامل alternative في طبيعة الفرضية الإحصائية البديلة المراد فحصها. يسمح الخيار الافتراضي "two.sided" باختبار أي انحراف عام عن العشوائية، بينما يوجه الخيار "less" الاختبار للبحث عن أدلة التكتل والارتباط الإيجابي، في حين يركز الخيار "greater" على كشف التناوب المفرط والارتباط السلبي الدوري بين المشاهدات المتتابعة.

5.2 كود برمجي تطبيقي مع مصفوفة بيانات نموذجية

لتوضيح التطبيق العملي لاختبار الأشواط عبر حزمة snpar، سنفترض دراسة تجريبية تقيس زمن الاستجابة الإدراكية (بالميلي ثانية) لأحد المفحوصين عبر 20 محاولة متتالية. سنقوم بإنشاء متجه البيانات الإحصائية وتطبيق الاختبار باستخدام الإعدادات التقريبية والدقيقة لإجراء مقارنة منهجية وافية بين المنهجين:

library(snpar)
reaction_times <- c(245, 252, 260, 258, 270, 265, 280, 290, 285, 310, 230, 225, 215, 240, 235, 220, 210, 205, 215, 228)
# تنفيذ الاختبار التقريبي ثنائي الطرف
approx_test <- runs.test(reaction_times, exact = FALSE, alternative = "two.sided")
print(approx_test)
# تنفيذ الاختبار الدقيق للعينات الصغيرة
exact_test <- runs.test(reaction_times, exact = TRUE, alternative = "two.sided")
print(exact_test)

يقوم الكود أعلاه بتصنيف متتالية أزمنة الاستجابة حول وسيطها الحسابي، وتتبع عدد الأشواط التي تشكلت نتيجة تقلب القياسات فوق وتحت هذا الوسيط، ثم حساب إحصائية الاختبار والقيمة الاحتمالية الدقيقة والتقريبية، مما يوفر تشخيصاً فورياً لمدى عشوائية تتابع استجابات المشارك خلال زمن الاختبار المعملي.

5.3 استخراج وتفسير مخرجات دالة runs.test في snpar

يولد تنفيذ دالة runs.test() في حزمة snpar تقريراً إحصائياً منظماً يحتوي على المكونات التحليلية الجوهرية اللازمة لتقييم الفرضيات. يظهر في مخرجات الكود السابق ما يلي:

  • Approximate runs test statistic (Standard Normal): القيمة المعيارية المحسوبة لإحصائية $Z$، والتي تعبر عن بعد عدد الأشواط المرصود عن وسطه المتوقع بوحدات الانحراف المعياري.
  • Number of runs: العدد الفعلي للأشواط ($R$) التي تم رصدها في السلسلة بعد مقارنتها بنقطة القطع.
  • p-value: القيمة الاحتمالية المقترنة بالاختبار، والتي تحدد درجة الدلالة الإحصائية للقرار المتخذ.

في المثال التطبيقي الموضح أعلاه، نلاحظ أن متتالية أزمنة الاستجابة تركزت أولاً في قيم مرتفعة ثم انحدرت في النصف الثاني إلى قيم منخفضة، مما يسفر عن عدد أشواط منخفض جداً (شوطان فقط: $R = 2$). تحت هذا النمط، تسجل إحصائية $Z$ قيمة سالبة كبيرة تتجاوز $-3.5$ بانحراف دال إحصائياً، وتنتج قيمة احتمالية بالغة الصغر ($p < 0.001$). يوجه هذا الناتج الباحث بثقة لرفض الفرضية الصفرية القائلة بالعشوائية، واستنتاج وجود تأثير تكتلي منهجي ناجم على الأرجح عن تغيرات وظيفية في أداء المشارك كالتعب أو التكيف التدريجي مع المهمة.

6. الطريقة الثانية: إجراء اختبار الأشواط باستخدام حزمة randtests والحزم البديلة

6.1 تطبيق الدالة runs.test من حزمة randtests

تقدم حزمة randtests مرونة برمجية وإحصائية استثنائية تجعلها الخيار المفضل لدى العديد من المحللين، حيث تتيح الدالة runs.test() في هذه الحزمة التحكم اليدوي المباشر في تعيين نقطة القطع (Threshold/Cutpoint)، وتحديد معايير التعامل مع القيم المطابقة بدقة بالغة. تأتي الدالة بالهيكل البرمجي التالي:

randtests::runs.test(x, threshold = median(x), alternative = "two.sided", pvalue = "exact", plot = FALSE)

يسمح المعامل threshold بتعيين أي قيمة مرجعية يراها الباحث مناسبة، سواء كانت الوسيط الحسابي median(x)، أو المتوسط mean(x)، أو قيمة معيارية مطلقة مستمدة من الأدبيات النظرية. كما يتيح المعامل plot = TRUE توليد رسم بياني فوري يوضح تسلسل البيانات وتصنيفها اللوني حول خط العتبة، مما يمنح الباحث فحصاً بصرياً سريعاً يدعم التحليل الرقمي.

يوضح الكود التالي كيفية تطبيق الاختبار عبر randtests مع تحديد المتوسط الحسابي كنقطة قطع وتوليد الرسم البياني المصاحب:

library(randtests)
set.seed(42)
behavioral_scores <- rnorm(50, mean = 100, sd = 15)
test_result <- randtests::runs.test(behavioral_scores, threshold = mean(behavioral_scores), alternative = "two.sided", pvalue = "normal", plot = FALSE)
print(test_result)

تتميز مخرجات randtests بتقديم تقرير متكامل يشمل القيمة المتوقعة لعدد الأشواط (Expectation)، والتباين النظري (Variance)، وعدد المشاهدات فوق وتحت العتبة ($n_1$ و$n_2$)، مما يسهل التحقق اليدوي من صحة المعادلات الحسابية والخطوات الاستدلالية.

6.2 استخدام حزمة tseries لتحليل السلاسل الزمنية

تُعد حزمة tseries الرائدة في مجال التحليل القياسي والسلاسل الزمنية المالية والنفسية. تتضمن الحزمة دالة runs.test() مخصصة لمعالجة المتغيرات الثنائية الممثلة كعوامل (Factors) ذات مستويين متمايزين حصراً. تفرض هذه الدالة تحويل المتغير الرقمي إلى عامل ثنائي قبل التمرير، وتتعامل مع الحالات التسلسلية بكفاءة حسابية عالية مصممة للبيانات الضخمة.

يوضح الكود البرمجي التالي كيفية تهيئة البيانات وتحليلها باستخدام حزمة tseries:

library(tseries)
raw_data <- c(12, 15, 14, 18, 22, 25, 24, 21, 19, 13, 11, 9, 10, 14, 16)
# تحويل البيانات إلى عامل ثنائي بناءً على الوسيط
binary_factor <- factor(raw_data > median(raw_data), labels = c("Low", "High"))
# تنفيذ اختبار الأشواط في tseries
tseries_test <- tseries::runs.test(binary_factor, alternative = "two.sided")
print(tseries_test)

تستخدم tseries تقريباً طبيعياً يعتمد على صيغة تباين قياسية متوافقة مع ممارسات السلاسل الزمنية، وتوفر مخرجاتها قيمة الإحصائي المعياري $Z$ ودرجة الدلالة، مما يجعلها أداة ملائمة للدمج المباشر ضمن خطوط أنابيب تحليل السلاسل الزمنية المعقدة وبروتوكولات النمذجة التنبؤية.

6.3 تطابق النتائج البرمجية بين الطرق المختلفة

عند إجراء مقارنة تقاطعية (Cross-validation) لنتائج اختبار الأشواط عبر الحزم البرمجية الثلاث (snpar، randtests، وtseries) على مصفوفة البيانات ذاتها، يلاحظ المحلل الإحصائي تطابقاً شبه تام في إحصائية عدد الأشواط الفعلي $R$ والمتوسط المتوقع. ومع ذلك، قد تظهر فروق طفيفة جداً في الكسور العشرية الأخيرة لقيمة إحصائية $Z$ والقيمة الاحتمالية المصاحبة بين هذه الحزم.

تعود هذه الفروق الطفيفة أساساً إلى تباين طفيف في استراتيجيات المعالجة الحسابية المعتمدة داخلياً في بناء الشيفرة البرمجية لكل حزمة، ومن أبرزها:

  • تطبيق تصحيح الاستمرارية ($\pm 0.5$) في حزمة snpar بصورة افتراضية، بينما قد تتجاهله بعض الدوال الأخرى عند استخدام التقريب الطبيعي المباشر.
  • اختلاف طريقة معالجة القيم المتطابقة (Ties) المساوية تماماً لنقطة القطع، حيث تقوم بعض الدوال بإسقاطها بينما تقوم دوال أخرى بضمها لإحدى الفئتين.
  • الفروق بين دوال التوزيع التراكمي الدقيق والتقريبات الخوارزمية في الحسابات اللانهائية.

يوضح الجدول المقارن التالي السمات التقنية لكل حزمة برمجية لتسهيل اختيار الأنسب لطبيعة البحث:

الحزمة البرمجية الدالة المستخدمة دعم الحساب الدقيق تحديد نقطة القطع الاستخدام الموصى به
snpar runs.test() نعم (شامل ودقيق) تلقائي (الوسيط) البحوث السلوكية والطبية (عينات صغيرة وكبيرة)
randtests runs.test() نعم (خيارات متعددة) يدوي ومرن بالكامل التطبيقات التعليمية والتحليلات الحساسة للعتبات
tseries runs.test() تقريبي فقط يتطلب تحويلاً مسبقاً لعامل السلاسل الزمنية الطويلة والنماذج الاقتصادية

7. تفسير مخرجات اختبار الأشواط وتحليل النتائج الإحصائية

7.1 قراءة دقيقة لقيمة p-value وعلاقتها بالعشوائية

تمثل القيمة الاحتمالية ($p\text{-value}$) المؤشر الاستدلالي الأساسي الذي يستند إليه الباحث لتقييم صحة الفرضية الصفرية. عند الحصول على قيمة احتمالية تتجاوز العتبة المعيارية المحددة ($p > 0.05$)، فإن التفسير المنهجي الدقيق يقتضي القول بأنه “لا تتوفر أدلة إحصائية كافية لرفض فرضية العشوائية”، مما يعني أن تتابع المشاهدات المرصودة يتسق منطقياً مع ما يمكن أن ينتج عن مسار عشوائي خالص تحت شروط الصدفة المعملية.

يجب الحذر الشديد من الوقوع في المغالطة المنهجية الشائعة التي تفسر القيمة الاحتمالية العالية ($p > 0.05$) كـ “إثبات مطلق لعشوائية النظام”؛ فالإحصاء الاستدلالي لا يثبت الفرضيات الصفرية بل يفشل في دحضها فقط. قد تكون السلسلة محكومة بنمط دوري معقد غير خطي أو تشوه بنائي دقيق يعجز اختبار الأشواط البسيط عن التقاطه بسبب محدودية حجم العينة أو انخفاض القوة الإحصائية، مما يوجب التعامل مع النتائج كدليل على التوافق مع العشوائية الظاهرية وليس كحقيقة قطعية مطلقة.

في المقابل، عندما تنخفض القيمة الاحتمالية عن مستوى الدلالة ($p le 0.05$)، يستنتج الباحث بوضوح وجود انحراف منهجي دال إحصائياً ينفي العشوائية عن السلسلة المدروسة. يشير هذا الرفض إلى أن الترتيب الملحوظ للمشاهدات يحمل بنية ترابطية داخلية، مما يتطلب من المحلل التوقف عن معاملة المشاهدات كبيانات مستقلة والانتقال إلى استكشاف الأسباب السلوكية أو الفيزيائية المسؤولة عن تشكيل هذه الأنماط المتسلسلة.

7.2 تحليل إحصائية Z-score واتجاه الانحراف

توفر القيمة العددية وإشارة إحصائية التوزيع الطبيعي المعياري ($Z\text{-score}$) فهماً تشخيصياً عميقاً لطبيعة وآلية الانحراف عن العشوائية، ولا ينبغي الاكتفاء بمجرد النظر إلى القيمة الاحتمالية وحدها. تعكس إشارة $Z$ اتجاه الخلل في تتابع الأشواط مقارنة بالقيمة المتوقعة رياضياً:

  • إحصائية $Z$ السالبة دالة إحصائياً ($Z < -1.96$): تعني أن عدد الأشواط الفعلي أقل بكثير من المتوقع بالصدفة ($R ll \mu_R$). يشير هذا الانخفاض الحاد إلى ظاهرة التكتل السلوكي أو الاستجابي (Clustering)، حيث تميل المشاهدات المتماثلة إلى الاستمرار في الحالة ذاتها لفترات ممتدة، مما يدل على وجود قصور ذاتي، أو اتجاه زمني مستمر، أو استجابة نمطية طويلة الأمد في جمع البيانات.
  • إحصائية $Z$ الموجبة دالة إحصائياً ($Z > +1.96$): تعني أن عدد الأشواط الفعلي أكبر بكثير من المتوقع إحصائياً ($R gg \mu_R$). يعكس هذا الارتفاع ظاهرة التناوب المفرط (Over-alternation) أو التذبذب فائق السرعة، حيث تتبدل الحالات بشكل متكرر وغير طبيعي يفوق احتمالات الصدفة، وهو نمط يرتبط غالباً بالمحاولات المصطنعة لمحاكاة العشوائية أو وجود آليات تصحيحية عكسية مفرطة الفعالية.

يرتبط الحجم المطلق لإحصائية $Z$ مباشرة بحجم الأثر الإحصائي ودرجة الابتعاد عن المسار العشوائي؛ فالقيم المتطرفة ($|Z| > 3.0$) تشير إلى انحراف بنائي هيكلي عميق في توليد البيانات يستحيل عزوه للتقلبات العينية العابرة، مما يوفر للباحثين مقياساً كمياً لشدة النمطية السلوكية المكتشفة.

7.3 كتابة التقرير الإحصائي وفق معايير APA

يتطلب توثيق نتائج اختبار الأشواط في المجلات العلمية المحكمة اتباع التوجيهات الدقيقة الصادرة عن جمعية علم النفس الأمريكية في دليلها الأحدث (APA 7th Edition). يقتضي هذا المعيار تضمين كافة المؤشرات الإحصائية الوصفية والاستدلالية، بما في ذلك عدد الأشواط الفعلي ($R$)، وحجم العينة الكلي ($N$) أو أحجام المجموعات الفرعية ($n_1, n_2$)، وقيمة الإحصائي المعياري ($Z$)، والقيمة الاحتمالية الدقيقة ($p\text{-value}$)، واتجاه الفرضية المختبرة.

فيما يلي نماذج تطبيقية لصياغة التقارير الإحصائية وفق سياقات مختلفة:

نموذج (1): في حالة دلالة التكتل السلوكي (رفض الفرضية الصفرية):
“أُجري اختبار فالد-وولفويتز للأشواط للتحقق من عشوائية تسلسل أزمنة الاستجابة لدى المفحوصين عبر المحاولات التجريبية المتتالية. أظهرت النتائج أن عدد الأشواط المرصود ($R = 12$) كان أقل بشكل دال إحصائياً من العدد المتوقع تحت فرضية العشوائية ($\mu_R = 25.4$)، مما يشير إلى وجود نمط تكتلي دال في الأداء ($Z = -3.84, p < .001$, ثنائي الطرف). يعكس هذا الانخفاض الملحوظ في عدد الأشواط وجود ارتباط تسلسلي إيجابي يرجح تأثر الأداء بتراكم التعب الذهني عبر مراحل الاختبار."

نموذج (2): في حالة عدم وجود دلالة (الفشل في رفض العشوائية):
“تم فحص عشوائية توزيع المهام الإدراكية باستخدام اختبار الأشواط حول الوسيط. أشارت النتائج إلى عدم وجود انحراف دال إحصائياً في تتابع المهام ($R = 48, n_1 = 50, n_2 = 50, Z = -0.40, p = .688$)، مما يؤكد أن تسلسل تقديم المثيرات يتوافق تماماً مع متطلبات التوزيع العشوائي المستقل.”

يُنصح دائماً بتعزيز التقرير المكتوب بمخططات التسلسل الزمني البصرية (Run Charts) التي تعرض بوضوح موقع خط الأساس وتوزيع الأشواط عبر المحاولات، مما يمنح القارئ فهماً بصرياً متكاملاً يدعم الاستدلال الرقمي المقدم في متن البحث.

8. التعامل مع البيانات الثنائية مقابل البيانات الرقمية المستمرة ونقاط القطع (Cutpoints)

8.1 اختبار الأشواط للمتغيرات الثنائية (Dichotomous Variables)

يمثل التحليل المباشر للمتغيرات الثنائية الطبيعية (Dichotomous Variables) التطبيق الأنقى والأكثر مباشرة لاختبار الأشواط؛ حيث تأتي البيانات في أصلها مصنفة ضمن فئتين نوعيتين متمايزتين لا لبس فيهما، مثل استجابات التقييم المعرفي (نجاح/فشل، صح/خطأ)، أو القرارات السلوكية (شراء/امتناع، قبول/رفض)، أو التشخيصات السريرية الثنائية (إيجابي/سلبي). في هذه الحالات، لا يحتاج الباحث إلى التدخل بتطبيق أي عتبة عددية اصطناعية لتقسيم المشاهدات، مما يحفظ البنية الطبيعية المطلقة للبيانات كما تم جمعها ميدانياً.

يتم ترميز البيانات الثنائية داخل بيئة لغة R بسهولة عبر المتجهات النصية أو المنطقية أو باستخدام الأرقام الثنائية $(0, 1)$. تتعامل حزم الاختبار مع هذه المتجهات بسلاسة تامة؛ حيث تحسب مباشرة تكرار كل حالة ($n_1$ و$n_2$) وتشرع في عد الأشواط المتتالية. على سبيل المثال، لتحليل نمط الإجابات الصحيحة والخاطئة لأحد الطلاب في اختبار تحصيلي متتابع:

exam_responses <- c("C", "C", "C", "I", "I", "C", "I", "C", "C", "C", "I", "I")
# تحويلها إلى عامل وتطبيق الاختبار
binary_test <- snpar::runs.test(as.numeric(factor(exam_responses)))
print(binary_test)

يكتسب هذا النمط من التحليل أهمية خاصة في التقييم النفسي السريري للكشف عن استراتيجيات التحفيز؛ فالمرضى الذين يظهرون متواليات طويلة غير طبيعية من الفشل المتواصل قد يعكس أداؤهم رغبة في ادعاء المرض (Malingering) بدلاً من وجود عجز معرفي حقيقي، وهو ما يفضحه اختبار الأشواط بسهولة من خلال إحصائية التكتل الدالة إحصائياً.

8.2 معايير اختيار نقطة القطع (Cutpoint) للبيانات الكمية

عند الرغبة في تطبيق اختبار الأشواط على متغيرات كمية مستمرة (مثل درجات القلق، مستويات الهرمونات، أو معدلات الإنتاجية)، يواجه المحلل الإحصائي ضرورة منهجية تتمثل في اختيار نقطة القطع المعيارية (Cutpoint) لتحويل المتصل الرقمي إلى ثنائية تصنيفية (+/-). يُعد هذا القرار خطوة منهجية بالغة الحساسية، حيث يؤثر موقع العتبة تأثيراً مباشراً على توزيع تكرارات الفئتين ($n_1$ و$n_2$) وعلى البناء النهائي لعدد الأشواط المتشكلة في السلسلة.

تتعدد المعايير المنهجية المتبعة لاختيار نقطة القطع وتتوزع على ثلاثة مداخل رئيسية:

  • الوسيط الحسابي (Sample Median): يمثل المعيار الذهبي والأكثر أماناً من الناحية الإحصائية؛ حيث يضمن الوسيط قسماً متساوياً تماماً للمشاهدات إلى نصفين متكافئين ($n_1 \approx n_2 \approx N/2$). يحقق هذا التوازن أقصى قوة إحصائية للاختبار اللامعلمي، ويجعل التوزيع التوافقي للأشواط متماثلاً تماماً ومقاوماً للالتواء الموضعي.
  • المتوسط الحسابي (Sample Mean): يُستخدم في التوزيعات المتماثلة المتناظرة، لكنه يتأثر بشدة بوجود القيم المتطرفة والملتوية، مما قد يؤدي إلى خلق عدم توازن حاد بين المجموعتين ($n_1 \neq n_2$)، وهو ما يقلل من حساسية الاختبار ويزيد من تشتت التباين النظري لعدد الأشواط.
  • نقاط القطع النظرية أو الإكلينيكية المعيارية (Clinical Cutpoints): يتم فيها تحديد العتبة بناءً على معايير تشخيصية مسبقة ومستقلة عن العينة قيد الفحص (مثل درجة معيارية معينة على مقياس بيك للاكتئاب، أو خط فقر محدد). تكمن ميزة هذا المدخل في ربط النتائج الإحصائية بمدلولات تطبيقية ملموسة وذات صلة بصنع القرار الإكلينيكي أو الإداري.

8.3 حساسية الاختبار لتغيير نقطة القطع

تُعد دراسة حساسية الاختبار لتغيير نقطة القطع (Sensitivity Analysis) من الممارسات الإحصائية المتقدمة والضرورية لضمان متانة القرارات الاستدلالية وعدم اعتمادها على خيارات تحكيمية عارضة. عند تغيير نقطة القطع من الوسيط إلى المتوسط أو إلى قيمة معيارية أخرى، تتغير بالضرورة تصنيفات المشاهدات القريبة من العتبة، مما قد يقود إلى دمج أشواط منفصلة أو تقسيم أشواط متصلة، وهو ما ينعكس بصورة مباشرة على قيمة $Z$ المحسوبة والقيمة الاحتمالية الناتجة.

لتجنب اتخاذ قرارات متسرعة مبنية على عتبة منفردة، يقوم الباحثون بتنفيذ فحص الحساسية في بيئة R عبر اختبار نطاق واسع من نقاط القطع المئوية (مثل المئين 25، المئين 50، والمئين 75) ومراقبة ثبات القرار الإحصائي عبر هذه المستويات. يوضح الكود التالي كيفية أتمتة تحليل الحساسية عبر عدة نقاط قطع متعددة:

data_series <- c(10, 12, 14, 15, 18, 20, 22, 21, 19, 17, 16, 25, 28, 30, 29, 27)
cutpoints <- quantile(data_series, probs = c(0.25, 0.50, 0.75))
sensitivity_results <- sapply(cutpoints, function(cp) {
  res <- randtests::runs.test(data_series, threshold = cp)
  c(Runs = res$runs, Z = res$statistic, P_Value = res$p.value)
})
print(t(sensitivity_results))

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

9. تطبيق عملي: تحليل عشوائية الاستجابة في الاختبارات النفسية والتجريبية

9.1 دراسة حالة: كشف التخمين العشوائي في اختبارات الأداء المعرفي

يمثل التمييز بين المعرفة الحقيقية والتخمين العشوائي (Random Guessing) أحد التحديات المستمرة في القياس النفسي والتربوي. عندما يواجه الطالب أو المفحوص بنوداً اختبارية تفوق قدرته المعرفية، قد يلجأ إلى اختيار الإجابات بنمط تخميني بحت، أو قد يتبع استراتيجية تخمينية نمطية كاختيار الرمز نفسه بصورة متكررة. يوفر اختبار الأشواط أداة سيكومترية دقيقة لتقييم مصداقية أنماط الإجابة المتسلسلة للمشاركين في الاختبارات التحصيلية واختبارات الذكاء.

نفترض سيناريو تجريبياً تم فيه تسجيل إجابات أحد المشاركين في اختبار اختيار من متعدد مكون من 40 سؤالاً، حيث تم ترميز الإجابة الصحيحة بالرقم (1) والخاطئة بالرقم (0). سنقوم ببناء كود تحليلي كامل في R لاستكشاف ما إذا كان تسلسل النجاح والفشل يتبع توزيعاً عشوائياً ناتجاً عن الصدفة والتخمين، أم أنه يعكس تكتلاً في المعرفة والإخفاق:

# محاكاة سلسلة استجابات لمفحوص تجريبي
set.seed(789)
student_responses <- c(1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1)
# تنفيذ اختبار الأشواط في snpar
test_cognition <- snpar::runs.test(student_responses, exact = TRUE)
print(test_cognition)

تكشف مخرجات هذا التحليل عن وجود عدد أشواط قليل جداً ($R = 7$) مقارنة بما تفرضه العشوائية النظرية لسلسلة بطول 40 عنصراً. تشير إحصائية $Z$ السالبة الدالة إحصائياً ($p < 0.001$) إلى وجود تكتل عنقودي صلب في الإجابات؛ مما يثبت سلوكياً أن أداء المفحوص لم يكن تخميناً عشوائياً متناثراً، بل عكس فترات متصلة من الإتقان المعرفي المتتابع تخللتها فترات متصلة من العجز المعرفي التام، وهي معلومة تشخيصية بالغة الأهمية لمعلمي ومصممي الاختبارات النفسية.

9.2 دراسة حالة: تقييم العشوائية الذاتية في مهمة توليد الأرقام العشوائية

أظهرت دراسات علم النفس المعرفي الكلاسيكية أن العقل البشري يعاني من عجز بنيوي في إدراك وتوليد العشوائية الحقيقية؛ فالأفراد يميلون في مهام التوليد الذاتي للأرقام العشوائية (Subjective Random Generation Tasks) إلى تجنب تكرار الرمز نفسه في محاولات متتالية، لاعتقادهم الخاطئ بأن تكرار الرمز ينفي العشوائية (مغالطة المقامر – Gambler’s Fallacy). يسفر هذا الانحياز المعرفي عن ظاهرة نفسية شهيرة تُعرف بـ “التناوب المفرط” (Over-alternation).

لتطبيق اختبار الأشواط في هذا السياق المعرفي، سنقوم بمقارنة سلسلة من 60 خياراً ثنائياً (أ، ب) تم توليدها ذاتياً بواسطة إنسان، بسلسلة أخرى مماثلة تم توليدها حاسوبياً عبر خوارزمية عشوائية حقيقية في R، وتطبيق اختبار الأشواط أحادي الطرف لكشف التناوب الزائد:

# سلسلة تم توليدها بواسطة مشارك بشري (تظهر تناوباً مفرطاً)
human_sequence <- c(1,0,1,0,1,1,0,1,0,1,0,0,1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,1,0,1,0,1,0,1,1,0,1,0,1,0,0,1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,1,0)
# سلسلة مولدة حاسوبياً
set.seed(999)
computer_sequence <- sample(c(0, 1), size = 60, replace = TRUE)
# اختبار سلسلة الإنسان لكشف التناوب المفرط (Alternative = "greater")
human_test <- snpar::runs.test(human_sequence, alternative = "greater")
computer_test <- snpar::runs.test(computer_sequence, alternative = "greater")
print(human_test)
print(computer_test)

تُظهر نتائج المقارنة أن السلسلة البشرية تحقق قيمة $Z$ موجبة ومرتفعة جداً مع قيمة احتمالية دالة إحصائياً ($p 0.40$) مع تسجيل عدد أشواط قريب جداً من المتوسط المتوقع، مما يبرز كفاءة اختبار الأشواط في التمييز بين الآليات المعرفية الواعية والمصادر العشوائية النقية.

9.3 التمثيل البصري للبيانات المتسلسلة والأشواط في R

يمثل التحليل البصري خطوة تكاملية لا غنى عنها في التقارير الإحصائية المتقدمة؛ حيث يساعد المخطط البياني المتقن في إيصال فكرة التتابع الزمني والأشواط بوضوح للقارئ والمحكم الأكاديمي. توفر حزمة ggplot2 إمكانيات فائقة لبناء مخططات التسلسل (Run Charts) ذات الجودة العالية والملائمة للنشر في الدوريات العلمية المرموقة.

يوضح الكود التالي كيفية إنشاء رسم بياني متكامل يعرض مسار المشاهدات المتسلسلة، مع تحديد خط الوسيط كعتبة أفقية، وتلوين النقاط بحسب انتمائها لما فوق أو ما دون العتبة، وتظليل الأشواط المتمايزة:

library(ggplot2)
time_points <- 1:length(student_responses)
plot_data <- data.frame(Trial = time_points, Response = student_responses, Category = factor(student_responses, labels = c("Incorrect", "Correct")))
ggplot(plot_data, aes(x = Trial, y = Response)) +
  geom_line(color = "gray50", linetype = "dashed") +
  geom_point(aes(color = Category), size = 3) +
  scale_color_manual(values = c("Incorrect" = "#D95F02", "Correct" = "#1B9E77")) +
  scale_y_continuous(breaks = c(0, 1), labels = c("0 (خطأ)", "1 (صح)")) +
  labs(title = "مخطط التسلسل الزمني لأشواط الاستجابة المعرفية", subtitle = "توضيح التكتل السلوكي في إجابات المفحوص عبر المحاولات المتتالية", x = "رقم المحاولة التجريبية (Trial)", y = "طبيعة الاستجابة", color = "فئة الاستجابة") +
  theme_minimal(base_family = "sans") +
  theme(plot.title = element_text(face = "bold", hjust = 0.5), plot.subtitle = element_text(hjust = 0.5), legend.position = "bottom")

يتيح تصدير هذا الرسم البياني بدقة عالية (300 DPI) عبر دالة ggsave() إدراج أشكال توضيحية احترافية في الأوراق البحثية، مما يعزز الصدق الظاهري للتحليلات اللامعلمية ويوفر سنداً بيانياً قوياً للأرقام الإحصائية الواردة في متن التقرير.

10. تشخيص الأخطاء الشائعة واستكشاف المشكلات وإصلاحها في R

10.1 معالجة خطأ القيم المتطابقة وربطات البيانات (Ties)

تُعد مشكلة القيم المتطابقة أو الربطات (Ties) المشكلة التقنية الأكثر شيوعاً وإرباكاً عند تطبيق اختبار الأشواط على البيانات المستمرة؛ وتحدث هذه المعضلة عندما تتطابق قيمة واحدة أو أكثر من المشاهدات العددية تماماً مع نقطة القطع المعتمدة (كالوسيط الحسابي). في مثل هذه الحالات، يعجز المنطق الثنائي البسيط عن تصنيف هذه القيم المطابقة كـ (+) أو (-)، مما يفرض على الخوارزمية البرمجية اتخاذ إجراء استثنائي قد يؤثر على سلامة النتائج.

تتعامل الحزم الإحصائية في R مع معضلة الربطات وفق استراتيجيات برمجية متباينة:

  • استراتيجية الإسقاط والحذف (Dropping Ties): وهي الاستراتيجية الافتراضية في معظم الحزم مثل snpar؛ حيث يتم حذف المشاهدات المساوية تماماً للوسيط من السلسلة وتقليص حجم العينة الكلي بمقدار عدد القيم المحذوفة ($N’ = N – k$). يؤدي هذا الإجراء إلى فقدان جزء من البيانات وقد يشوه الترتيب الزمني إذا كانت الربطات متجاورة.
  • استراتيجية التوزيع العشوائي (Random Jittering): يتم فيها إضافة تشويش عشوائي بالغ الصغر (مثل $10^{-6}$) إلى البيانات الأصلية لكسر التطابق وإجبار كل قيمة على الوقوع أعلى أو أدنى من العتبة بدقة متناهية. يمكن تنفيذ ذلك في R عبر كود مخصص: jittered_data <- jitter(raw_data, amount = 1e-6).
  • استراتيجية الضم المنحاز (Biased Inclusion): يتم فيها ضم جميع القيم المطابقة لفئة واحدة (إما كأكبر من أو يساوي، أو كأصغر من أو يساوي)، غير أن هذا الإجراء يخلق عدم توازن مقصود في حجوم الفئات ويشوه توزيع التباين النظري.

يجب على الباحث فحص مصفوفة البيانات مسبقاً وتحديد عدد المشاهدات المطابقة للوسيط؛ فإذا تجاوزت نسبة الربطات $5%$ من إجمالي حجم العينة، يُنصح بتطبيق استراتيجية إضافة التشويش الطفيف (Jittering) مع إجراء محاكاة لعدة تكرارات لضمان عدم تأثر القرار الاستدلالي بالقيم المضافة، أو الانتقال لاختبارات لامعلمية أخرى مهيأة أصلاً للتعامل مع الربطات الكثيفة كاMarshall-Edgeworth أو اختبارات الرتب المعززة.

10.2 الأخطاء البرمجية الشائعة ورسائل التحذير في R

يواجه مستخدمو لغة R مجموعة متكررة من رسائل التحذير (Warnings) والأخطاء الصريحة (Errors) عند تنفيذ دوال اختبار الأشواط، وتنتج هذه الإشكالات عادة عن سوء تهيئة المتجهات أو عدم استيفاء الشروط العددية الصغرى. فيما يلي تشخيص لأبرز هذه الأخطاء وسبل معالجتها برمجياً:

1. خطأ عدم كفاية التباين (Zero Variance / Single Class):
يظهر عندما يحتوي المتجه على فئة واحدة فقط بعد التصنيف (كأن تكون جميع المشاهدات أعلى من نقطة القطع). تسفر هذه الحالة عن قيمة تباين مساوية للصفر ($\sigma_R^2 = 0$) مما يؤدي إلى فشل الدالة وظهور رسالة خطأ صريحة مفادها: Error in runs.test: data must contain at least two distinct values. يُعالج هذا الخطأ بفحص توزيع البيانات وتعديل نقطة القطع لتشمل قيماً من كلا الجانبين.

2. تحذير عدم دقة التقريب الطبيعي في العينات الصغيرة:
تطلق حزم الاختبار رسالة تحذيرية: Warning: sample size too small for normal approximation عندما يكون $n_1 < 10$ أو $n_2 < 10$. لا يمثل هذا التحذير خطأً برمجياً بل تنبيهاً منهجياً حاسماً يدعو الباحث إلى تفعيل المعامل الدقيق exact = TRUE بدلاً من الاعتماد على إحصائية $Z$ المضللة في العينات الصغيرة.

3. خطأ نوع البيانات غير المتوافق (Data Type Mismatch):
يحدث عند تمرير إطار بيانات (Data Frame) كامل بدلاً من متجه رقمي أو عامل، مما يطلق الخطأ: Error: non-numeric argument to binary operator. يُحل هذا الخطأ بالتأكد من استخراج العمود المستهدف كمتجه منفرد باستخدام علامة الدولار data$variable أو دوال التحويل الصريح as.numeric().

10.3 الأخطاء المنهجية في تفسير الاستقلالية السلوكية

ينزلق العديد من الباحثين في أخطاء منهجية ومفاهيمية عند تفسير نتائج اختبار الأشواط وتطبيقها على الظواهر السلوكية. الخطأ الأكثر شيوعاً هو الخلط بين استقلالية المشاهدات وغياب الارتباط الذاتي الخطي؛ فاختبار الأشواط يفحص التتابع النوعي للقيم ولكنه لا يقيس شدة الارتباط الخطي التبادلي كما تفعل دالة الارتباط الذاتي (Autocorrelation Function – ACF). قد تكون السلسلة خالية من التكتل في الأشواط لكنها تنطوي على اعتماد دوري غير خطي عالي التعقيد، مما يفرض تكامل أدوات الفحص وعدم الاكتفاء باختبار الأشواط كدليل منفرد وشامل على الاستقلالية التامة.

يتمثل خطأ منهجي آخر في تجاهل المتغيرات المربكة الخارجية (Confounding Variables) التي تؤثر على تتابع السلسلة وتفرز أنماطاً زائفة. على سبيل المثال، قد يُظهر تسجيل الأداء الحركي للمفحوصين تكتلاً واضحاً في الأشواط ليس بسبب طبيعة المهمة العصبية، بل نتيجة التغيرات الدورية في درجة حرارة غرفة المختبر، أو تباين مستوى الضوضاء المحيطة، أو تأثير فترات الاستراحة المعملية. يجب على الباحث تصميم التجارب بصرامة بيئية فائقة لضمان أن ما يقيسه الاختبار يمثل السلوك الداخلي الصافي للنظام المدروس.

أخيراً، يقع بعض المحللين في فخ إهمال تأثيرات الترتيب المنهجي (Order Effects) والتكيف السيكوفيزيائي؛ فحتى مع تطبيق العشوائية التامة في تصميم المهام، قد يطور المفحوص آليات تعلم تدريجي أو يقع فريسة للإرهاق المتراكم خلال الاختبار الطويل. يُعد هذا التغير السلوكي تطوراً ديناميكياً حقيقياً وليس مجرد “خطأ في التوزيع”، ويجب نمذجته باستخدام تحليلات الانحدار الطولي ومنحنيات النمو بدلاً من الاكتفاء باستبعاده كخلل في العشوائية.

11. مقارنة اختبار الأشواط باختبارات العشوائية والاستقلالية الأخرى

11.1 المقارنة مع اختبار داربن-واتسون (Durbin-Watson Test)

يُعد اختبار داربن-واتسون (Durbin-Watson Test) المعيار الإحصائي البارامتري الأكثر استخداماً لفحص الارتباط الذاتي من الدرجة الأولى ($AR(1)$) في بواقي نماذج الانحدار الخطي والسلاسل الزمنية. يقوم هذا الاختبار على حساب النسبة بين مجموع مربعات الفروق المتتالية في البواقي ومجموع مربعات البواقي الكلية، وتتراوح إحصائيته $d$ دائماً بين 0 و4، حيث تشير القيمة 2 إلى انعدام الارتباط الذاتي، بينما تدل القيم الأقل من 2 على ارتباط إيجابي والقيم الأكبر على ارتباط سلبي.

تتجلى الفروق الجوهرية بين الاختبارين في طبيعة الافتراضات التوزيعية ومستوى القياس؛ فاختبار داربن-واتسون يتطلب بالضرورة بيانات كمية مستمرة تخضع بواقيها للتوزيع الطبيعي بدقة مع تجانس تام للتباين. في المقابل، يبرز اختبار الأشواط كبديل لا معلمي متين لا يشترط اعتدالية التوزيع ولا يتأثر بالقيم الشاذة المتطرفة التي قد تعصف بدقة إحصائية داربن-واتسون وتشوه قراراتها الاستدلالية.

يُفضل استخدام اختبار الأشواط بدلاً من اختبار داربن-واتسون في سيناريوهات متعددة، أهمها: عند التعامل مع نماذج الانحدار اللوجستي ذات الاستجابات الثنائية، أو عندما تكون أحجام العينات صغيرة وملتوية التوزيع بشدة، أو في الحالات التي يرغب فيها الباحث في التحقق من عشوائية الترتيب البحتة دون الاهتمام بالحجم العددي المطلق للفروق بين الملاحظات المتتالية.

11.2 المقارنة مع اختبار ليونغ-بوكس (Ljung-Box Test)

يمثل اختبار ليونغ-بوكس (Ljung-Box Portmanteau Test) أداة متقدمة واسعة الانتشار في تحليل السلاسل الزمنية المعقدة ونماذج ARIMA؛ حيث يفحص هذا الاختبار فرضية عدم وجود ارتباط ذاتي متزامن عبر درجات إزاحة متعددة (Multiple Lags) وليس فقط للإزاحة الأولى. يجمع الاختبار معاملات الارتباط الذاتي الموزونة حتى الإزاحة $m$، مما يمنحه قدرة فائقة على اكتشاف الأنماط الدورية الطويلة والهياكل الموسمية الخفية في البيانات المستمرة.

في حين يتفوق اختبار ليونغ-بوكس في استيعاب الاعتماديات المتأخرة عبر الزمن الطويل، يتميز اختبار فالد-وولفويتز للأشواط بتركيزه اللامعلمي على تتابع الحالات المحلية دون فرض أي بنية خطية على الارتباطات. لا يتطلب اختبار الأشواط تحديد رتبة الإزاحة ($m$) مسبقاً، مما يجنب الباحث معضلة التحيز في اختيار عدد الفترات الزمنية المتأخرة، ويجعله مثالياً للسلاسل السلوكية القصيرة والمتوسطة التي يصعب فيها تقدير دالة الارتباط الذاتي بدقة كافية.

تتكامل وظيفة الاختبارين في الممارسات التحليلية الرصينة؛ إذ يمكن للمحلل تطبيق اختبار ليونغ-بوكس عبر الدالة Box.test(data, type = "Ljung-Box") للتحقق من خلو السلسلة من الارتباطات الخطية المتأخرة، يليه تطبيق اختبار الأشواط للتأكد من غياب أي تكتل نوعي موضعي حول خط الأساس، مما يوفر تقييماً مزدوجاً وشاملاً لاستقلالية البيانات السلوكية المدروسة.

11.3 المقارنة مع اختبار بارتيلز للرتب (Bartels Rank Test)

يُعد اختبار بارتيلز للرتب (Bartels Rank Test for Randomness) النسخة اللامعلمية المكافئة لاختبار فون نويمان (von Neumann Ratio)، وهو مصمم خصيصاً لزيادة القوة الإحصائية للاختبارات اللامعلمية عند فحص عشوائية البيانات الكمية المستمرة. يعتمد اختبار بارتيلز على استبدال القيم العددية برتبها التسلسلية (Ranks) بدلاً من تحويلها إلى ثنائية (+/-)، مما يتيح له استغلال المعلومات الترتيبية الكاملة المتاحة في المتجه دون إهدار الفروق الدقيقة بين المشاهدات.

يتميز اختبار بارتيلز بحساسية استثنائية تفوق اختبار الأشواط في الكشف عن الاتجاهات العامة المستمرة (Linear and Monotonic Trends) والتقلبات الموسمية الأملس، وتتوفر دالته التطبيقية بسهولة في حزمة randtests عبر الكود التالي:

bartels_result <- randtests::bartels.rank.test(reaction_times, alternative = "two.sided")
print(bartels_result)

مع ذلك، يظل اختبار الأشواط الخيار الأفضل والأكثر موثوقية عند التعامل مع البيانات الفئوية الثنائية في أصلها، أو في البيئات السيكومترية التي تشهد تحولات طورية مفاجئة (Step-level shifts) وحالات تذبذب غير متصلة؛ حيث تكون الأشواط أكثر حساسية للكسور الموضعية المفاجئة مقارنة باختبارات الرتب التراكمية.

12. أفضل الممارسات والاعتبارات المتقدمة عند تطبيق اختبار الأشواط

12.1 حجم العينة والقوة الإحصائية في التصاميم النفسية

ترتبط موثوقية الاستدلال في اختبار الأشواط ارتباطاً وثيقاً بالقوة الإحصائية للاختبار (Statistical Power)، وهي احتمالية رفض الفرضية الصفرية بنجاح عند وجود نمط غير عشوائي حقيقي في المجتمع المدروس. في السلاسل القصيرة جداً التي يقل طولها الإجمالي عن 15 إلى 20 مشاهدة، تنخفض القوة الإحصائية لاختبار الأشواط انخفاضاً حاداً، مما يجعل الاختبار عاجزاً عن اكتشاف حتى التكتلات والانحرافات السلوكية الجسيمة، ويؤدي إلى معدلات مرتفعة من الخطأ الإحصائي من النوع الثاني ($\beta$).

تؤثر درجة التوازن بين أحجام المجموعات الفرعية ($n_1$ و$n_2$) تأثيراً مباشراً على القوة؛ فعندما يكون توزيع الحالات غير متوازن بشدة (كأن يكون $n_1 = 35$ و$n_2 = 5$ في عينة بحجم 40)، يتقلص التباين النظري ويصبح النطاق المتاح لتشكل الأشواط ضيقاً للغاية، مما يحد من حساسية الاختبار. لذلك، يُنصح بتصميم التجارب بحيث تولد نسباً متكافئة من الحالات، واستخدام الوسيط الحسابي دائماً عند تصنيف المتغيرات المستمرة لضمان التساوي المطلق بين الفئتين.

لتقدير حجم العينة المثالي المطلوب لتحقيق قوة إحصائية معيارية ($1 – \beta ge 0.80$)، ينفذ الباحثون دراسات محاكاة مونت كارلو (Monte Carlo Power Simulations) داخل R. يوضح الكود المتقدم التالي كيفية محاكاة القوة الإحصائية لاختبار الأشواط تحت سيناريو وجود ارتباط تسلسلي إيجابي خفيف ($AR(1) = 0.4$) عبر أحجام عينات مختلفة:

simulate_runs_power <- function(N, n_sims = 1000, rho = 0.4) {
  significant_count <- 0
  for(i in 1:n_sims) {
    ar_data <- arima.sim(model = list(ar = rho), n = N)
    p_val <- randtests::runs.test(ar_data, threshold = median(ar_data))$p.value
    if(p_val <= 0.05) significant_count <- significant_count + 1
  }
  return(significant_count / n_sims)
}
# تقدير القوة لأحجام عينات مختلفة
sample_sizes <- c(20, 50, 100)
power_estimates <- sapply(sample_sizes, simulate_runs_power)
names(power_estimates) <- paste0("N=", sample_sizes)
print(power_estimates)

تساعد هذه المحاكاة المسبقة الباحثين في تحديد طول السلسلة السلوكية الكافي لضمان كفاءة الاختبار قبل الشروع في جمع البيانات المعملية المكلفة.

12.2 أتمتة فحص العشوائية لبيانات المشاركين المتعددين

في التصاميم التجريبية والسلوكية المعاصرة، يتعامل الباحث نادراً مع متوالية زمنية لمفحوص واحد؛ بل تتجمع لديه مصفوفات بيانات ضخمة تحتوي على تسجيلات متسلسلة لعشرات أو مئات المشاركين. تتطلب معالجة هذه البيانات مهارات برمجة متقدمة لأتمتة تطبيق اختبار الأشواط وتجميع النتائج عبر هياكل البيانات التكرارية الحديثة مثل حزمة purrr أو دوال عائلة apply المدمجة في R.

يوضح الكود التالي كيفية بناء خط معالجة آلي (Automated Pipeline) يقرأ بيانات متعددة المشاركين، ويطبق اختبار الأشواط على استجابات كل مشارك على حدة، ويستخرج المؤشرات الإحصائية في جدول تلخيصي موحد (Tidy Data Frame)، مع تطبيق تصحيحات المقارنات المتعددة لضبط معدل الاكتشاف الكاذب (False Discovery Rate – FDR):

# محاكاة مصفوفة بيانات لـ 5 مشاركين عبر 30 محاولة
set.seed(321)
participants_matrix <- matrix(sample(c(0, 1), 150, replace = TRUE), nrow = 5, ncol = 30)
rownames(participants_matrix) <- paste0("Participant_", 1:5)
# تطبيق آلي واستخراج النتائج المجمعة
batch_results <- apply(participants_matrix, 1, function(row) {
  t <- randtests::runs.test(row)
  c(Runs = t$runs, Expected = t$mu, Z_Score = t$statistic, P_Value = t$p.value)
})
summary_df <- as.data.frame(t(batch_results))
# إضافة تصحيح بنجاميني-هوشبرغ للقيمة الاحتمالية
summary_df$Adj_P_Value <- p.adjust(summary_df$P_Value, method = "BH")
print(summary_df)

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

12.3 التوصيات المنهجية لإعداد التقارير وتوثيق الكود البرمجي

لضمان الشفافية العلمية المطلقة ومطابقة المعايير الأكاديمية الصارمة في نشر التحليلات الإحصائية المعتمدة على اختبار الأشواط، يتعين على الباحثين الالتزام بمجموعة من التوصيات الإجرائية والتوثيقية الدقيقة:

  • التصريح الكامل عن معاملات الاختبار: يجب أن يوضح التقرير صراحة الحزمة البرمجية المستخدمة ورقم إصدارها، والدالة المطبقة، ونقطة القطع المعتمدة ومبررات اختيارها المنهجية، ونوع الفرضية البديلة (أحادية أم ثنائية الطرف)، وما إذا كان الحساب قد تم بالصيغة الدقيقة أم التقريبية مع تصحيح الاستمرارية.
  • الشفافية في معالجة الربطات والقيم المفقودة: يجب توثيق عدد القيم المساوية لنقطة القطع بدقة وبيان الكيفية التي عولجت بها (حذف، تشتيت عشوائي، أو ضم)، مع توضيح أي استبعاد للمشاهدات المفقودة وتأثير ذلك على طول السلسلة الإجمالي.
  • إرفاق الشيفرات المصدرية والبيانات المفتوحة: يُوصى بشدة برفع شفرات التحليل البرمجية (R Scripts أو R Markdown) وبيانات الدراسة غير المعرفة إلى مستودعات البحث العلمي المفتوح، مما يسمح للمحكمين والباحثين بإعادة إنتاج النتائج والرسوم البيانية بدقة تامة وبنقرة زر واحدة.
  • تضمين اختبار الأشواط كبروتوكول فحص استكشافي قياسي: يجب إدراج فحص العشوائية اللامعلمي كخطوة تشخيصية أولية وروتينية تسبق التحليلات الإحصائية المتقدمة في كافة التصاميم التجريبية والسلوكية، لضمان استيفاء افتراضات الاستقلالية وعدم تلوث النماذج بأنماط غير منظورة.

خاتمة واستنتاجات ختامية

يقدم اختبار فالد-وولفويتز للأشواط (Runs Test) نموذجاً متميزاً للأدوات الإحصائية اللامعلمية التي تجمع بين البساطة الرياضية والقوة الاستدلالية العميقة. بفضل استناده المباشر إلى المنطق التوافقي والترتيب المتسلسل للمشاهدات، يوفر هذا الاختبار حلاً عبقرياً لمشكلة التحقق من عشوائية البيانات واستقلالية المشاهدات دون التورط في الافتراضات التوزيعية المقيدة التي تعيق تطبيق الاختبارات البارامترية في كثير من الأحيان. وتبرهن لغة البرمجة R، بما تملكه من حزم برمجية متطورة كـ snpar وrandtests وtseries، على قدرتها الفائقة على تسيير إجراءات هذا الاختبار، بدءاً من الحساب الدقيق للعينات الصغيرة وصولاً إلى التقريبات المعيارية للأطر البيانية الضخمة ومحاكاة القوة الإحصائية.

إن التطبيق المنهجي الرصين لاختبار الأشواط في العلوم النفسية والسلوكية والتجريبية يفتح آفاقاً رحبة أمام الباحثين لكشف التحيزات الكامنة، واستبعاد الاستجابات المصطنعة، والتأكد من سلامة بروتوكولات التعشية في تصميم المثيرات والتجارب السريرية. غير أن النجاح في توظيف هذه الأداة يتطلب وعياً عميقاً بمحدداتها المنهجية؛ كالانتباه لحساسية الاختبار تجاه اختيار نقاط القطع، والمعالجة الدقيقة للقيم المتطابقة، والتفريق الحاسم بين الفشل في رفض العشوائية والإثبات المطلق لها. ومن خلال اتباع أفضل ممارسات التوثيق البرمجي والتمثيل البصري وفق معايير APA، يمتلك الباحثون أداة قوية وشفافة تسهم في الارتقاء بجودة الاستدلال العلمي وتعزيز موثوقية النتائج في شتى ميادين المعرفة التجريبية.

المراجع (References)

اقتباس هذا المقال

looti, M. (2026, أغسطس 27). كيفية إجراء اختبار الأشواط في R. عرب سايكلوجي. https://arabpsychology.com/statistics/how-to-perform-runs-test-in-r/
looti, Mohammed. “كيفية إجراء اختبار الأشواط في R.” عرب سايكلوجي, 27 أغسطس 2026, https://arabpsychology.com/statistics/how-to-perform-runs-test-in-r/.
looti, Mohammed. “كيفية إجراء اختبار الأشواط في R.” عرب سايكلوجي. أغسطس 27, 2026. https://arabpsychology.com/statistics/how-to-perform-runs-test-in-r/.