كيفية تنفيذ عملية التمهيد في بايثون (مع مثال)


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

العملية الأساسية للتمهيد هي كما يلي:

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

أسهل طريقة للتمهيد في Python هي استخدام وظيفة bootstrap من مكتبة SciPy .

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

مثال: تنفيذ عملية التمهيد في بايثون

لنفترض أننا أنشأنا مجموعة بيانات في بايثون تحتوي على 15 قيمة:

 #define array of data values
data = [7, 9, 10, 10, 12, 14, 15, 16, 16, 17, 19, 20, 21, 21, 23]

يمكننا استخدام الكود التالي لحساب فاصل ثقة تمهيدي بنسبة 95% للقيمة المتوسطة:

 from scipy. stats import bootstrap
import numpy as np

#convert array to sequence
data = (data,)

#calculate 95% bootstrapped confidence interval for median
bootstrap_ci = bootstrap(data, np. median , confidence_level= 0.95 ,
                         random_state= 1 , method=' percentile ')

#view 95% boostrapped confidence interval
print ( bootstrap_ci.confidence_interval )

ConfidenceInterval(low=10.0, high=20.0)

تبين أن فترة الثقة التمهيدية 95% للوسيط هي [10.0, 20.0] .

إليك ما فعلته وظيفة Boostrap() فعليًا تحت الغطاء:

  • قامت الدالة bootstrap() بإنشاء 9999 عينة مع الاستبدال. (الرقم الافتراضي هو 9999 ولكن يمكنك استخدام الوسيطة n_resamples لتغيير هذا الرقم)
  • لكل عينة التمهيد، تم حساب الوسيط.
  • تم ترتيب القيمة المتوسطة لكل عينة من الأصغر إلى الأكبر وتم استخدام القيمة المتوسطة عند المئين 2.5% والمئين 97.5% لبناء الحدود الدنيا والعليا لفاصل الثقة 95%. %.

لاحظ أنه يمكنك حساب فاصل الثقة التمهيدي لأي إحصائية تقريبًا.

على سبيل المثال، يمكننا استبدال np.median بـ np.std في الدالة bootstrap() لحساب فاصل ثقة بنسبة 95% للانحراف المعياري:

 from scipy. stats import bootstrap
import numpy as np

#convert array to sequence
data = (data,)

#calculate 95% bootstrapped confidence interval for median
bootstrap_ci = bootstrap(data, np. std , confidence_level= 0.95 ,
                         random_state= 1 , method=' percentile ')

#view 95% boostrapped confidence interval
print ( bootstrap_ci.confidence_interval )

ConfidenceInterval(low=3.3199732261303283, high=5.66478399066117)

وتبين أن فترة الثقة التمهيدية 95٪ للانحراف المعياري هي [3.32، 5.67] .

ملاحظة : بالنسبة لهذه الأمثلة، نختار إنشاء فواصل ثقة بنسبة 95%، ولكن يمكنك تغيير قيمة وسيطة Trust_level لإنشاء فاصل ثقة بحجم مختلف.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية التمهيد في برامج الإحصاء الأخرى:

كيفية التمهيد في R
كيفية التمهيد في Excel

Add a Comment

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