Я намагаюся моделювати деякі дані за допомогою glmnet
пакету в Р. Скажімо, у мене є такі дані
training_x <- data.frame(variable1 = c(1, 2, 3, 2, 3),
variable2 = c(1, 2, 3, 4, 5))
y <- c(1, 2, 3, 4, 5)
(Це спрощення; мої дані набагато складніші.) Тоді я використовував наступний код для створення моделі glmnet.
x <- as.matrix(training_x)
library(glmnet)
GLMnet_model_1 <- glmnet(x, y, family="gaussian", alpha=0.755,
nlambda=1000, standardize=FALSE, maxit=100000)
Я використовую, standardize=FALSE
оскільки мої реальні дані вже стандартизовані. Тоді я хочу зробити передбачення для нового набору даних. Скажімо, мої нові дані:
newdata <- as.matrix(data.frame(variable1 = c(2, 2, 1, 3),
variable2 = c(6, 2, 1, 3)))
results <- predict(object=GLMnet_model_1, newx, type="response")
Я б очікував, що результати містять 4 елементи (прогнози newdata
), але замість цього це дає мені матрицю 4x398. Що я роблю неправильно?