Ошибка получения в eval (predvars, data, env): в R с использованием предиката (...) - PullRequest
0 голосов
/ 02 марта 2020

Я создал тренировочный набор с 274 строками и тестовый набор с 118 строками. Каждый набор имеет 6 переменных из auto_mpg.data из репозитория UCI.

Данные в каждом наборе были нормализованы с использованием нормализации min-max.

Я создаю линейную модель, используя lm через следующее утверждение:

auto.norm.train.lm<-lm(formula=auto.norm.train$mpg~auto.norm.train$cyl+auto.norm.train$disp+auto.norm.train$hp+auto.norm.train$weight+auto.norm.train$accel,data=auto.norm.train)

Теперь я хочу предсказать значение auto.norm.test$ mpg, используя эту линейную модель:

auto.norm.pred<-predict(auto.norm.train.lm,newData=auto.norm.test)

Это производит auto.norm.pred. Но auto.norm.pred имеет 274 строки, когда я пытаюсь предсказать значения, используя auto.norm.test. Я ожидаю, что результат будет иметь только 118 строк.

Я должен что-то здесь пропустить. Я проконсультировался с несколькими книгами по R, в частности R по науке о данных , что говорит о том, что я могу просто сказать:

plot(auto.norm.pred,auto.norm.test$mpg)

Ошибка в xy.coords (x, y, xlabel , ylabel, log): длины 'x' и 'y' отличаются

Я не понимаю, почему в pred 274 строки, а не 118, поскольку кажется, что в результате должно быть только 118, учитывая, что количество строк в auto.norm.test.

Буду признателен за разъяснение того, что я делаю неправильно или чего мне не хватает в документации.

...