2014-11-10 1 views
0

Я новичок в R, поэтому я, вероятно, просто делаю ошибку новобранец, не понимая базовую структуру R, но я уже прочитал все вопросы по этой теме, и по-прежнему не может заставить мой код работать.Ошибки с функцией предсказания и data.frame

Я начал здесь: how to solve predict.lm() error: variable 'affinity' was fitted with type "nmatrix.1" but type "numeric" was supplied

Тогда я прочитал это: https://stat.ethz.ch/pipermail/r-help/2008-August/170848.html

Но я до сих пор не могу сделать мой прогнозируемое значение надлежащего data.frame.

Вот проблема: Я использую mtcars набор данных, который поставляется с R. Я сделал основную модель:

fitcars<-lm(mpg~wt, data=mtcars) 

тогда, когда я пытаюсь сделать это:

predict(fitcars,data.frame(wt=c(3)),interval=("prediction")) 

к получить доверительный интервал для прогнозирования mpg при определенном весе. Тем не менее, я по-прежнему получаю сообщение об ошибке:

variable 'center.wt' was fitted with type "nmatrix.1" but type "numeric" was supplied. 

Это не имеет значения, если я сначала сделать as.vector(mtcars$wt).

Я даже пытался сделать это исправить, как это было предложено в вышеуказанных должностях:

fitcars<-lm(mpg~as.vector(center.wt), data=mtcars) 

И я только что получил эту ошибку:

Error in model.frame.default(formula = mpg ~ as.vector(center.wt), data = mtcars, : 
    invalid type (list) for variable 'as.vector(center.wt)' 

Я в тупик, и знаю, что я просто делая глупую ошибку. Может ли кто-нибудь помочь?

спасибо !!

ответ

0

Хм, кажется, не имеют никаких проблем с:

fitcars<-lm(mpg~wt,data=mtcars) 
new<-data.frame(wt=2.5) 
predict(fitcars,new,interval='prediction')