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.

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

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
  • 6436 views
  • 0 likes
  • 2 in conversation