كيفية تنفيذ الانحدار القوي في r (خطوة بخطوة)
الانحدار القوي هو أسلوب يمكننا استخدامه كبديل لانحدار المربعات الصغرى العادية عندما تكون هناك قيم متطرفة أو ملاحظات مؤثرة في مجموعة البيانات التي نعمل معها.
لإجراء انحدار قوي في R، يمكننا استخدام الدالة rlm() من الحزمة MASS ، والتي تستخدم بناء الجملة التالي:
يوضح المثال التالي خطوة بخطوة كيفية تنفيذ الانحدار القوي في R لمجموعة بيانات معينة.
الخطوة 1: إنشاء البيانات
أولاً، لنقم بإنشاء مجموعة بيانات مزيفة للعمل معها:
#create data df <- data. frame (x1=c(1, 3, 3, 4, 4, 6, 6, 8, 9, 3, 11, 16, 16, 18, 19, 20, 23, 23, 24, 25), x2=c(7, 7, 4, 29, 13, 34, 17, 19, 20, 12, 25, 26, 26, 26, 27, 29, 30, 31, 31, 32), y=c(17, 170, 19, 194, 24, 2, 25, 29, 30, 32, 44, 60, 61, 63, 63, 64, 61, 67, 59, 70)) #view first six rows of data head(df) x1 x2 y 1 1 7 17 2 3 7 170 3 3 4 19 4 4 29 194 5 4 13 24 6 6 34 2
الخطوة 2: إجراء انحدار المربعات الصغرى العادية
بعد ذلك، دعونا نلائم نموذج انحدار عادي للمربعات الصغرى وننشئ مخططًا للبقايا الموحدة .
من الناحية العملية، غالبًا ما نعتبر أي قيمة متبقية موحدة تكون قيمتها المطلقة أكبر من 3 بمثابة قيمة متطرفة.
#fit ordinary least squares regression model ols <- lm(y~x1+x2, data=df) #create plot of y-values vs. standardized residuals plot(df$y, rstandard(ols), ylab=' Standardized Residuals ', xlab=' y ') abline(h= 0 )
من الرسم البياني يمكننا أن نرى أن هناك ملاحظتين لهما بقايا موحدة حول 3.
يشير هذا إلى وجود قيمتين متطرفتين محتملتين في مجموعة البيانات وبالتالي قد نستفيد من الانحدار القوي بدلاً من ذلك.
الخطوة 3: تنفيذ الانحدار القوي
بعد ذلك، دعونا نستخدم الدالة rlm() لتناسب نموذج الانحدار القوي:
library (MASS)
#fit robust regression model
robust <- rlm(y~x1+x2, data=df)
لتحديد ما إذا كان نموذج الانحدار القوي هذا يوفر ملاءمة أفضل للبيانات مقارنة بنموذج OLS، يمكننا حساب الخطأ القياسي المتبقي لكل نموذج.
الخطأ المعياري المتبقي (RSE) هو وسيلة لقياس الانحراف المعياري للبقايا في نموذج الانحدار. كلما انخفضت قيمة المسؤولية الاجتماعية للشركات، كانت قدرة النموذج على ملاءمة البيانات أفضل.
يوضح الكود التالي كيفية حساب RSE لكل نموذج:
#find residual standard error of ols model summary(ols)$sigma [1] 49.41848 #find residual standard error of ols model summary(robust)$sigma [1] 9.369349
يمكننا أن نرى أن RSE لنموذج الانحدار القوي أقل بكثير من نموذج انحدار المربعات الصغرى العادي، والذي يخبرنا أن نموذج الانحدار القوي يوفر ملاءمة أفضل للبيانات.
مصادر إضافية
كيفية إجراء الانحدار الخطي البسيط في R
كيفية إجراء الانحدار الخطي المتعدد في R
كيفية إجراء الانحدار متعدد الحدود في R