Я использую пакет glmnet в R для регрессии гребня.Я примерил набор данных Hitters из пакета ISLR.Проблема в том, что когда я использую model.matrix для создания матрицы проекта, количество наблюдений уменьшается по неизвестной причине.Это код.
library(ISLR)
library(glmnet)
data("Hitters")
set.seed(1)
train=sample(1:nrow(Hitters), nrow(Hitters)/2)
test=(-train)
train.data = Hitters[train,]
test.data = Hitters[test,]
train.x=model.matrix(Salary~.,train.data)[,-1]
train.y=train.data$Salary
В коде я пытаюсь предсказать переменную зарплаты, используя все остальные переменные.Train.data имеет 161 наблюдений, в то время как train.x имеет 131. Я не понимаю, почему это произойдет, и буду признателен за любую помощь.