[R] predict.lm if regression vector is longer than predicton vector

Greg Snow 538280 at gmail.com
Wed Oct 3 19:54:18 CEST 2012

The most common case that I see that error is when someone fits their
model using syntax like:

fit <- lm( mydata$y ~ mydata$x )

instead of the preferred method:

fit <- lm( y ~ x, data=mydata )

The fix (if this is what you did and why you are getting the error) is
to not use the first way and instead use the second, preferred way.

On Wed, Oct 3, 2012 at 8:37 AM, frauke <fhoss at andrew.cmu.edu> wrote:
> Hi everybody,
> recently a member of the community pointed me to the useful predict.lm()
> comment. While I was toying with it, I stumbled across the following
> problem.
> I do the regression with data from five years. But I want to do a prediction
> with predict.lm for only one year. Thus my dataframe for predict.lm(mod,
> newdata=dataframe) is shorter than the orginial vector that I did the
> regression with. It gives you the following error:
> Warning message:
> 'newdata' had 365 rows but variable(s) found have 1825 rows
> Of course I can extend the new dataframe with a few thousands NAs, but is
> there a more elegant solution?
> Thank you! Frauke
> --
> View this message in context: http://r.789695.n4.nabble.com/predict-lm-if-regression-vector-is-longer-than-predicton-vector-tp4644881.html
> Sent from the R help mailing list archive at Nabble.com.
> ______________________________________________
> R-help at 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.

Gregory (Greg) L. Snow Ph.D.
538280 at gmail.com

More information about the R-help mailing list