Próbuję modelować niektóre dane przy użyciu glmnet
pakietu w R. Załóżmy, że mam następujące dane
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)
(Jest to uproszczenie; moje dane są znacznie bardziej skomplikowane.) Następnie użyłem następującego kodu, aby utworzyć model 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)
Używam, standardize=FALSE
ponieważ moje rzeczywiste dane są już znormalizowane. Następnie chcę przewidzieć nowy zestaw danych. Powiedzmy, że moje nowe dane to:
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")
Oczekiwałbym, że wyniki będą zawierać 4 elementy (przewidywania newdata
), ale zamiast tego daje mi macierz 4x398. Co ja robię źle?