как получить все переменные из stepAIC - PullRequest
1 голос
/ 04 ноября 2019

Я бы хотел сохранить все коэффициенты stepAIC. Установите 0 для пропущенной переменной и отобразите ее так же, как coef (glm.model)

glm.model=suppressWarnings(glm(as.factor(diagnosis)~.,family = "binomial",data = dat))
step.model=stepAIC(glm.model,trace = FALSE,direction="both")

Первоначально у меня есть 30 переменных, я хотел бы отобразить все это из stepAIC и установить значение 0, если онобыл исключен из пошагового

1 Ответ

0 голосов
/ 04 ноября 2019

Вы можете попробовать это ниже, я использую пример набора данных из MASS.

library(MASS)
example(birthwt)
glm.model <- glm(low ~ ., family = binomial, data = bwt)
step.model <- stepAIC(glm.model, trace = FALSE)

# on a vector
# create an empty vector of zeros
STEP_COEF = vector("numeric",length(coefficients(glm.model)))
#same names
names(STEP_COEF) = names(coefficients(glm.model))
#fill in the ones found in step
STEP_COEF[names(coefficients(step.model))] = as.numeric(coefficients(step.model))

> STEP_COEF
(Intercept)         age         lwt   raceblack   raceother   smokeTRUE 
-0.12532604  0.00000000 -0.01591847  1.30085571  0.85441418  0.86658183 
    ptdTRUE      htTRUE      uiTRUE        ftv1       ftv2+ 
 1.12885661  1.86689526  0.75064880  0.00000000  0.00000000 
...