Hello!
I'm still working on my problem, which also occurs with the predict.lm() function. - Providing newdata, which is a data.frame with all variables being "numeric", as str() shows, R tells me the following:

ar1.xpred.test.pred <- predict(ar1.xpred.fitted, regdata.test, se.fit = FALSE) Fehler: variable 'lag(ret1)' was fitted with type "numeric" but type "nmatrix.1" was supplied
Zusätzlich: Warnmeldung:
'newdata' had 23 rows but variable(s) found have 89 rows

Estimating a model from the test-data and examining, the resulting lm-object I found out that the "data classes" switched to "nmatrix.1" - while they were "numeric" for the original model using the traning data.

str(ar1.xpred.test.lm$model)
...
attr(*, "dataClasses")= Named chr [1:4] "nmatrix.1" "nmatrix.1" "nmatrix.1" "nmatrix.1"
...

str(ar1.xpred.lm$model)
...
attr(*, "dataClasses")= Named chr [1:4] "numeric" "numeric" "nmatrix.1" "nmatrix.1"
...

I've no clue what the type "nmatrix.1" is and how I could possibly manipulate the lm()-object to change this into "numeric". What puzzles me is the fact, that both training- and test-data.frames were created exactly the same way, even controling the types of their variables.

Can anybody help me out or propose a bypass? I desperately need to make some out-of-sample predictions!
Many thanks:
Gero

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to