كيفية استخراج معاملات الانحدار من glm() في r
يمكنك استخدام الطرق التالية لاستخراج معاملات الانحدار من الدالة glm() في R:
الطريقة الأولى: استخراج كافة معاملات الانحدار
model$coefficients
الطريقة الثانية: استخراج معامل الانحدار لمتغير معين
model$coefficients[' my_variable ']
الطريقة الثالثة: استخراج كافة معاملات الانحدار ذات الخطأ القياسي وقيمة Z وقيمة P
summary(model)$coefficients
يوضح المثال التالي كيفية استخدام هذه الأساليب عمليًا.
مثال: استخراج معاملات الانحدار من glm() في R
لنفترض أننا نلائم نموذج الانحدار اللوجستي باستخدام مجموعة البيانات الافتراضية من حزمة ISLR :
#load dataset data <- ISLR::Default #view first six rows of data head(data) default student balance income 1 No No 729.5265 44361.625 2 No Yes 817.1804 12106.135 3 No No 1073.5492 31767.139 4 No No 529.2506 35704.494 5 No No 785.6559 38463.496 6 No Yes 919.5885 7491.559 #fit logistic regression model model <- glm(default~student+balance+income, family=' binomial ', data=data) #view summary of logistic regression model summary(model) Call: glm(formula = default ~ student + balance + income, family = "binomial", data = data) Deviance Residuals: Min 1Q Median 3Q Max -2.4691 -0.1418 -0.0557 -0.0203 3.7383 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -1.087e+01 4.923e-01 -22.080 < 2e-16 *** studentYes -6.468e-01 2.363e-01 -2.738 0.00619 ** balance 5.737e-03 2.319e-04 24.738 < 2e-16 *** income 3.033e-06 8.203e-06 0.370 0.71152 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 2920.6 on 9999 degrees of freedom Residual deviance: 1571.5 on 9996 degrees of freedom AIC: 1579.5 Number of Fisher Scoring iterations: 8
يمكننا كتابة معاملات النموذج $ لاستخراج جميع معاملات الانحدار من النموذج:
#extract all regression coefficients
model$coefficients
(Intercept) studentYes balance income
-1.086905e+01 -6.467758e-01 5.736505e-03 3.033450e-06
يمكننا أيضًا كتابة معاملات النموذج$[‘التوازن’] لاستخراج معامل الانحدار لمتغير الرصيد فقط:
#extract coefficient for 'balance'
model$coefficients[' balance ']
balance
0.005736505
لعرض معاملات الانحدار مع الأخطاء القياسية وقيم z وقيم p ، يمكننا استخدام معاملات الملخص(النموذج)$ كما يلي:
#view regression coefficients with standard errors, z values and p-values
summary(model)$coefficients
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.086905e+01 4.922555e-01 -22.080088 4.911280e-108
studentYes -6.467758e-01 2.362525e-01 -2.737646 6.188063e-03
balance 5.736505e-03 2.318945e-04 24.737563 4.219578e-135
income 3.033450e-06 8.202615e-06 0.369815 7.115203e-01
يمكننا أيضًا الوصول إلى قيم محددة في هذا الإخراج.
على سبيل المثال، يمكننا استخدام الكود التالي للوصول إلى القيمة p لمتغير التوازن :
#view p-value for balance variable summary(model)$coefficients[' balance ', ' Pr(>|z|) '] [1] 4.219578e-135
أو يمكننا استخدام الكود التالي للوصول إلى القيمة p لكل من معاملات الانحدار:
#view p-value for all variables summary(model)$coefficients[, ' Pr(>|z|) '] (Intercept) studentYes balance income 4.911280e-108 6.188063e-03 4.219578e-135 7.115203e-01
يتم عرض قيم P لكل معامل الانحدار في النموذج.
يمكنك استخدام بناء جملة مماثل للوصول إلى أي قيمة في الإخراج.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في R:
كيفية إجراء الانحدار الخطي البسيط في R
كيفية إجراء الانحدار الخطي المتعدد في R
كيفية إجراء الانحدار اللوجستي في R
كيفية إجراء الانحدار التربيعي في R