BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
SASstudent2012
Calcite | Level 5

All,

I am a student and keep getting an error when setting up estimate and contrast statements. I'm trying to build a model for the association between mean glucose and exercise status, and control for possible confounding. Below is the log, and I keep getting this error message "Effects used in the ESTIMATE statement must have appeared previously in the MODEL statement." I don't understand why I keep getting this - the variables 'waist' and 'diabetes' are in the model statement. Does anyone know what I'm doing wrong/can help me out?

Thanks!

89   proc glm data=testdata1;

90   class diabetes;

91   model glucose = waist diabetes/solution;

92   estimate 'diabetes: waist = 80' diabetes 1 -1 waist*diabetes 80 -80;

ERROR: Effects used in the ESTIMATE statement must have appeared previously in the MODEL

       statement.

NOTE: The previous statement has been deleted.

93   estimate 'diabetes: waist = 110' diabetes 1 -1 waist*diabetes 110 -110;

ERROR: Effects used in the ESTIMATE statement must have appeared previously in the MODEL

       statement.

NOTE: The previous statement has been deleted.

94   estimate 'diabetes: waist = 140' diabetes 1 -1 waist*diabetes 140 -140;

ERROR: Effects used in the ESTIMATE statement must have appeared previously in the MODEL

       statement.

NOTE: The previous statement has been deleted.

95   contrast '80 vs. 90'  diabetes 1 -1 waist*diabetes 80 -80, diabetes 1 -1 waist*diabetes 90

95 ! -90;

ERROR: Effects used in the CONTRAST statement must have appeared previously in the MODEL

       statement.

1 ACCEPTED SOLUTION

Accepted Solutions
data_null__
Jade | Level 19

Yes the variables are there but they only define the main effects effect for each variable.  You need to include the interaction effect waist*diabetes.

you can use vertical bar
glucose = waist | diabetes;

View solution in original post

2 REPLIES 2
data_null__
Jade | Level 19

Yes the variables are there but they only define the main effects effect for each variable.  You need to include the interaction effect waist*diabetes.

you can use vertical bar
glucose = waist | diabetes;

SASstudent2012
Calcite | Level 5

Thank you. I updated that line to model glucose = waist exercise waist*exercise/solution;

It worked.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 6240 views
  • 0 likes
  • 2 in conversation