To study the effect of the multicollinearity on response prediction, fill in the table below. For the last two columns, predict BODY FAT of an adult male with WEIGHT= 180 lbs, ABDOMEN = 90 cm and CHEST = 100 cm.
The following code gives me a value of zero for everything.
proc reg data=bodyfat.bodyfat;
model pctFatSiri = weight abdomen chest;
where weight = 180;
where abdomen = 90;
where chest = 100;
run;
What you are trying to do is very similar to this example in the documentation.
SAS Help Center: Example 102.3 Predicting Weight by Height and Age
You would not want to use a WHERE statement to limit the observations in the input data set. Instead it seems you are to take the parameter estimates from each of the models you fit and make predictions and get prediction intervals based on those values for the independent variable. You could use the OUTPUT statement to get predictions/intervals for all the observations and then limit that data set using a WHERE statement to the values that you are interested in.
The output indicates you have only one observation in your data. You can't fit a model to that, and there is 0 degrees of freedom, all regression coefficients are missing, there is no multicollinearity (or in the trival sense, with one observation, everything is perfectly correlated with everything else)
Fix the input data so that there are enough observations to fit the model.
There are so many problems here that I don't even know where to begin, most of them relating to confusion on your part about (seemingly) the entire problem. I don't have the time right now to go into all of this.
What you are trying to do is very similar to this example in the documentation.
SAS Help Center: Example 102.3 Predicting Weight by Height and Age
You would not want to use a WHERE statement to limit the observations in the input data set. Instead it seems you are to take the parameter estimates from each of the models you fit and make predictions and get prediction intervals based on those values for the independent variable. You could use the OUTPUT statement to get predictions/intervals for all the observations and then limit that data set using a WHERE statement to the values that you are interested in.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.