كيفية حساب r-squared المعدل في r
R-squared ، غالبًا ما يُكتب R2 ، هو نسبة التباين في متغير الاستجابة الذي يمكن تفسيره بواسطة المتغيرات المتوقعة في نموذج الانحدار الخطي .
يمكن أن تتراوح قيمة R التربيعية من 0 إلى 1. تشير القيمة 0 إلى أن متغير الاستجابة لا يمكن تفسيره بواسطة المتغير المتنبئ على الإطلاق، بينما تشير القيمة 1 إلى أنه يمكن تفسير متغير الاستجابة بواسطة المتغير المتنبئ. وأوضح تماما دون خطأ من قبل المتنبئ. المتغيرات.
إن R-squared المعدل هو نسخة معدلة من R-squared والتي يتم ضبطها حسب عدد المتنبئين في نموذج الانحدار. يتم حسابه على النحو التالي:
تم تعديل R 2 = 1 – [(1-R 2 )*(n-1)/(nk-1)]
ذهب:
- R 2 : R 2 للنموذج
- n : عدد الملاحظات
- k : عدد المتغيرات المتوقعة
نظرًا لأن R2 يزداد دائمًا عند إضافة تنبؤات إلى نموذج، فإن R2 المعدل يمكن أن يكون بمثابة مقياس يخبرك بمدى فائدة النموذج، ويتم تعديله بناءً على عدد المتنبئين في النموذج .
يشرح هذا البرنامج التعليمي كيفية حساب R2 المعدل لنموذج الانحدار في R.
ذات صلة: ما هي قيمة R-squared الجيدة؟
مثال: كيفية حساب R-squared المعدل في R
يمكننا استخدام الكود التالي لإنشاء نموذج انحدار خطي متعدد في R باستخدام مجموعة البيانات المضمنة التي تسمى mtcars :
model <- lm (hp ~ mpg + wt + drat + qsec, data=mtcars)
ويمكننا استخدام إحدى الطرق الثلاث للعثور على مربع R المعدل للنموذج:
الطريقة الأولى: استخدم وظيفة الملخص ().
يمكننا تصور كلاً من مربع R ومربع R المعدل للنموذج ببساطة باستخدام وظيفة الملخص () :
summary (model)
Call:
lm(formula = hp ~ mpg + wt + drat + qsec, data = mtcars)
Residuals:
Min 1Q Median 3Q Max
-48,801 -16,007 -5,482 11,614 97,338
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 473.779 105.213 4.503 0.000116 ***
mpg -2.877 2.381 -1.209 0.237319
wt 26.037 13.514 1.927 0.064600 .
drat 4.819 15.952 0.302 0.764910
qsec -20.751 3.993 -5.197 1.79e-05 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 32.25 on 27 degrees of freedom
Multiple R-squared: 0.8073, Adjusted R-squared: 0.7787
F-statistic: 28.27 on 4 and 27 DF, p-value: 2.647e-09
في الجزء السفلي من الإخراج يمكننا أن نرى ما يلي:
- مربع R المتعدد: 0.8073
- تربيع R المعدل: 0.7787
الطريقة الثانية: استخدم الملخص(النموذج)$adj.r.squared
إذا أردنا ببساطة الحصول على مربع R المعدل للنموذج، فيمكننا استخدام الدالة التالية:
summary (model)$adj.r.squared
[1] 0.7787005
الطريقة الثالثة: استخدام وظيفة مخصصة
هناك طريقة أخرى للعثور على مربع R الملائم للنموذج وهي كتابة دالة مخصصة:
#define function to calculate adjusted R-squared
adj_r2 <- function (x) {
return (1 - ((1-summary(x)$r.squared)*( nobs (x)-1)/( nobs (x)- length (x$coefficients)-1)))
}
#use function to calculate adjusted R-squared of the model
adj_r2(model)
[1] 0.7787005
numeric(0)
لاحظ أن كل طريقة من الطرق الثلاثة المشتركة هنا تعطي نفس القيمة لمربع R المعدل.
مصادر إضافية
كيفية إجراء الانحدار الخطي البسيط في R
كيفية إجراء الانحدار الخطي المتعدد في R
كيفية إجراء الانحدار متعدد الحدود في R