>I am trying to understand why this line works:
>
> lm1x = lm(y~X-1, tmp)
Well, I would not normally define a data frame element as a matrix myself
(though I might well define a list element as one). But specifying a matrix as
the terms part of an lm is documented in lm's details:
"If response is a matrix a linear model is fitted separately by least-squares
to each column of the matrix"
So _something_ will happen.
Whether the something is useful depends on the intent.
> Here it seems that I was combining the design matrix and the data frame...
Did you inspect tmp after adding the design matrix? Was it an odd looking data
frame or a list?
What seems to have been done is that the design matrix has been added to a
list. I wouldn't normally do that if tmp is a data frame, and r would not do so
unless the lengths all matched. But a list should be ok. And lm takes a list
or environment as its data argument, so a list of things will work even if they
are different types. In other words tmp is just a ragbag of things, each of
which lm understands.
*******************************************************************
This email and any attachments are confidential. Any use...{{dropped:8}}
______________________________________________
[email protected] 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.