Skip to content

random factor and error messages in the model fitting

3 messages · Alex Fajardo, Martin Henry H. Stevens, John Maindonald

#
Hi Alex,
On Apr 2, 2008, at 10:17 AM, Alex Fajardo wrote:

            
I would assume that Age is NOT nested; if it is, you are saying that  
the effect of age could depend entirely on which transect you look at.  
Rather, I assume different ages simply have different responses, i.e.,  
(1|Age).

However, I would think that a fixed effect model is just as useful.
lm( SLA ~ Transect + Age + Age:Transect)

I am not sure why these altitudes or age class are considered a random  
draw from a large number of such classes that you know little about.  
They seem entirely repeated, and usefully so.

My two cents,
Hank
Dr. Hank Stevens, Associate Professor
338 Pearson Hall
Botany Department
Miami University
Oxford, OH 45056

Office: (513) 529-4206
Lab: (513) 529-4262
FAX: (513) 529-4243
http://www.cas.muohio.edu/~stevenmh/
http://www.cas.muohio.edu/ecology
http://www.muohio.edu/botany/

"If the stars should appear one night in a thousand years, how would men
believe and adore." -Ralph Waldo Emerson, writer and philosopher  
(1803-1882)
#
I'd expect that you want to generalize to a difference choice of  
transects within each altitude and age-class.  Were there multiple  
transects for each altitude and age-class combination?  If not, the  
factor Transect is trying to do two things at once -- account for the  
fixed effect of altitude, and account for the random effect of transect.

Two analyses are possible with the data that you seem to have:

A)  lm( SLA ~ Transect + Age + Age:Transect)

The inferences generalize to a different choice of tissue samples  
within those same Age and Transect combinations.  When a prediction is  
made, you have to say which Age and Transect combination you have in  
mind, and inferences apply to the particular Transects that were taken.


B)

lmer(SLA ~ Age + Transect + (1|Transect:Age),
          data=Treeline[Site=="TermasChillan",], na.action=na.omit)

This treats variation between Age:Transect combinations as the  
relevant measure of error, hoping that this will be mach the same as  
the error that you'd get from different transects within Altitude:Age  
combinations.  If there is an Altitude:Age interaction, it may over- 
estimate the error.

[If you do happen to have multiple transects for each Age:Transect  
combination, you'd want something like:

lmer(SLA ~ Age*Altitude+ (1|transect/Age),
          data=Treeline[Site=="TermasChillan",], na.action=na.omit)

(the error term needs to identify individual transect*Age  
combinations) ]


NB also, you might want to try a non-linear term in Age in the fixed  
part of the model.


John Maindonald             email: john.maindonald at anu.edu.au
phone : +61 2 (6125)3473    fax  : +61 2(6125)5549
Centre for Mathematics & Its Applications, Room 1194,
John Dedman Mathematical Sciences Building (Building 27)
Australian National University, Canberra ACT 0200.
On 3 Apr 2008, at 4:02 AM, Hank Stevens wrote: