I have a research experiment to analyze where I would like to know if there is an interaction between two experimental factors. Let's say that the experiment has 4 replications (rep) and 4 treatments (trt) and I will call the measured variable xyz. I use the following language:
proc glm;
class rep trt;
model xyz=rep|trt;
run;
The output will return dots in place of where p-values usually are. If I remove the interaction term from the model statement, I can get a p-value for rep and trt. Why does SAS not return p-values with more terms in the model? Is it a degrees of freedom issue?
There is no room for error in your model, or in other words, you used up all your DFs.
The terms are
Overall mean : 1 df
treatment means : 3 df
replicate means : 3 df
interaction treatment x replicate means : 3x3 = 9 df
Total : 16 df = nb of observations
Your model has enough terms to fit each observation exactly. Without an estimate of error, you cannot derive p-values.
PG
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.