[Rd] strange bahaviour of predict.lm

Moshe Olshansky m_o|@h@n@ky @end|ng |rom y@hoo@com
Tue Mar 17 05:36:04 CET 2020

Below is my code:
> A <- matrix(rnorm(10*3),ncol=3)
> b <- runif(10)
> reg <- lm(b ~ A)
> A1 <- matrix(rnorm(5*3),ncol=3)
> A1 <- as.data.frame(A1)
> b1 <- predict(reg,A1)
Warning message:
'newdata' had 5 rows but variables found have 10 rows 

  And instead of being an array of length 5, b1 is of length 10 and is identical to reg$fitted.values
I think that it should not be like this.
Let me note that for lm I do not care about this as much since I can use reg$coefficients, but unfortunately this behaviour is "inherited" by other methods. When I am trying to fit a regression tree, predicting from the object without using 'predict' method is less trivial.
Thank you,Moshe.
P.S. just in case:> sessionInfo()
R version 3.6.2 (2019-12-12)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Linux Mint 19.1

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

[1] C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.2 tools_3.6.2   

	[[alternative HTML version deleted]]

More information about the R-devel mailing list