[R] Fitting linear models
David Winsemius
dwinsemius at comcast.net
Tue Apr 21 02:35:12 CEST 2009
On Apr 20, 2009, at 7:26 PM, Vemuri, Aparna wrote:
> I am not sure if this is an R-users question, but since most of you
> here
> are statisticians, I decided to give it a shot.
You can omit the unnecessary preambles.
>
>
> I am using the lm() function in R to fit a dependent variable to a set
> of 3 to 5 independent variables. For this, I used the following
> commands:
>
>> model1<-lm(function=PBW~SO4+NO3+NH4)
> Coefficients:
> (Intercept) SO4 NO3 NH4
> 0.01323 0.01968 0.01856 NA
>
> and
>
>> model2<-lm(function=PBW~SO4+NO3+NH4+Na+Cl)
>
> Coefficients:
> (Intercept) SO4 NO3 NH4
> Na Cl
> -0.0006987 -0.0119750 -0.0295042 0.0842989 0.1344751
> NA
>
> In both cases, the last independent variable has a coefficient of NA
> in
> the result. I say last variable because, when I change the order of
> the
> variables, the coefficient changes (see below). Can anyone point me to
> the reason R behaves this way? Is there anyway for me to force R to
> use
> all the variables? I checked the correlation matrices to makes sure
> there is no orthogonality between the variables.
You really did not name your dependent variable "function" did you?
Please stop that.
Just a guess, ... since you have not provided enough information to do
otherwise, ... Are all of those variables 1/0 dummy variables? If so
and if you want to have an output that satisfies your need for
labeling the coefficients as you naively anticipate, then put "0+" at
the beginning of the formula or "-1" at the end, so that the intercept
will disappear and then all variables will get labeled as you expect.
--
David Winsemius, MD
Heritage Laboratories
West Hartford, CT
More information about the R-help
mailing list