Я использую пакет каретки в R, чтобы соответствовать модели регрессии LASSO. Мой код работает нормально, однако я хотел бы извлечь Intercept для окончательной модели, чтобы я мог построить ключ оценки, используя выбранные предикторы и коэффициенты.
Например, если «Экстраверсия» — это переменная, которую я пытаюсь смоделировать с помощью элементов опроса, я хотел бы получить следующий ключ оценки:
Intercept + Survey_Item_1*Slope + Survey_Item_2*Slope + and so on
FWIW, я могу извлечь коэффициенты для предикторов.
Мой код для справки:
##Create Training & test set
set.seed(9808)
ind <- sample(0:1, nrow(df), replace=T, prob=c(.75,.25))
train <- df[ind==0,]
test <- df[ind==1,]
ctrl <- trainControl(method = "repeatedcv", number=5, repeats = 5)
##Train Lasso model
fit.lasso <- train(Extraversion ~., , data=train, method="lasso", preProc=c('scale','center','nzv'), trControl=ctrl)
fit.lasso
predict.enet(fit.lasso$finalModel, type='coefficients', s=fit.lasso$bestTune$fraction, mode='fraction')
##Fit models to test data
lasso_test<- predict(fit.lasso, newdata=test, na.action="na.pass")
postResample(pred = lasso_test, obs = test[,c(1)])