Fitting linear models
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