Greetings,
I am trying to estimate the means of a continuous outcome called 'sbpchangemed' at different levels of a categorical variable (called acescore with 5 levels) (exposure) at three different values of a continuous variable (called hsiscore). I found the mean within each tertile of hsiscore. Tertile 1, low, has a mean of 2.0. Tertile 2, medium, has a mean of 10.3, and Tertile 3, high, has a mean of 29.5.
I tried the following code but have received the enclosed error message. I have tried a couple of things with the syntax to no avail.
Thank you so much for your help. Please let me know if I can help clarify anything.
When there are errors in the log, please show us the ENTIRE log (every single line, every single character, with nothing removed) for this PROC. Please copy the log as text and paste it into the window that appears when you click on the </> icon.
Opened SAS data file ANALYZE for reading. NOTE: Terms in the MODEL statement have been rearranged to follow SUBGROUP/CLASS order. NOTE: PROCEDURE REGRESS used (Total process time): real time 0.62 seconds cpu time 0.61 seconds 101 102 103 proc regress data = Analyze filetype = sas design = wr ; 104 subpopn keep2 = 1 ; 105 nest strata2 psu2; 106 weight weight2; 107 108 class acescore female ethnic incgt30k1 hsedu married insurance1 engpref1 nativity ; 109 110 model sbpchangemed = acescore age1 followuptime2 female ethnic incgt30k1 hsedu married 111 insurance1 engpref1 nativity bmi1 sbp1med hsiscore acescore*hsiscore ; 112 113 reflevel acescore = 0 ; 114 setenv decwidth = 2 ; 115 116 117 118 pred_eff acescore = (-1 1 0 0 0) * hsiscore(2) / name = "1 vs 0 hsiscore =2"; 119 pred_eff acescore = (-1 0 1 0 0) * hsiscore(2) / name = "2 vs 0 hsiscore =2"; 120 pred_eff acescore = (-1 0 0 1 0) * hsiscore(2) / name = "3 vs 0 hsiscore =2"; 121 pred_eff acescore = (-1 0 0 0 1) * hsiscore(2) / name = "4+ vs 0 hsiscore =2"; 122 123 pred_eff acescore = (-1 1 0 0 0) * hsiscore(10.3) / name = "1 vs 0 hsiscore =10.3"; 124 pred_eff acescore = (-1 0 1 0 0) * hsiscore(10.3) / name = "2 vs 0 hsiscore =10.3"; 125 pred_eff acescore = (-1 0 0 1 0) * hsiscore(10.3) / name = "3 vs 0 hsiscore =10.3"; 126 pred_eff acescore = (-1 0 0 0 1) * hsiscore(10.3) / name = "4+ vs 0 hsiscore =10.3"; 127 128 pred_eff acescore = (-1 1 0 0 0) * hsiscore(29.5) / name = "1 vs 0 hsiscore = 29.5"; 129 pred_eff acescore = (-1 0 1 0 0) * hsiscore(29.5) / name = "2 vs 0 hsiscore = 29.5"; 130 pred_eff acescore = (-1 0 0 1 0) * hsiscore(29.5) / name = "3 vs 0 hsiscore = 29.5"; 131 pred_eff acescore = (-1 0 0 0 1) * hsiscore(29.5) / name = "4+ vs 0 hsiscore = 29.5"; 132 133 134 run; 9 PRED_EFF ACESCORE = (-1 1 0 0 0) * HSISCORE(2) / NAME = "1 vs 0 hsiscore =2"; SYNTAX ERROR in Statement 9 : (Message 303) Expected '/' to precede option list 10 PRED_EFF ACESCORE = (-1 0 1 0 0) * HSISCORE(2) / NAME = "2 vs 0 hsiscore =2"; SYNTAX ERROR in Statement 10 : (Message 303) Expected '/' to precede option list 11 PRED_EFF ACESCORE = (-1 0 0 1 0) * HSISCORE(2) / NAME = "3 vs 0 hsiscore =2"; SYNTAX ERROR in Statement 11 : (Message 303) Expected '/' to precede option list 12 PRED_EFF ACESCORE = (-1 0 0 0 1) * HSISCORE(2) / NAME = "4+ vs 0 hsiscore =2"; SYNTAX ERROR in Statement 12 : (Message 303) Expected '/' to precede option list 13 PRED_EFF ACESCORE = (-1 1 0 0 0) * HSISCORE(10.3) / NAME = "1 vs 0 hsiscore =10.3"; SYNTAX ERROR in Statement 13 : (Message 303) Expected '/' to precede option list 14 PRED_EFF ACESCORE = (-1 0 1 0 0) * HSISCORE(10.3) / NAME = "2 vs 0 hsiscore =10.3"; SYNTAX ERROR in Statement 14 : (Message 303) Expected '/' to precede option list 15 PRED_EFF ACESCORE = (-1 0 0 1 0) * HSISCORE(10.3) / NAME = "3 vs 0 hsiscore =10.3"; SYNTAX ERROR in Statement 15 : (Message 303) Expected '/' to precede option list 16 PRED_EFF ACESCORE = (-1 0 0 0 1) * HSISCORE(10.3) / NAME = "4+ vs 0 hsiscore =10.3"; SYNTAX ERROR in Statement 16 : (Message 303) Expected '/' to precede option list 17 PRED_EFF ACESCORE = (-1 1 0 0 0) * HSISCORE(29.5) / NAME = "1 vs 0 hsiscore = 29.5"; SYNTAX ERROR in Statement 17 : (Message 303) Expected '/' to precede option list 18 PRED_EFF ACESCORE = (-1 0 1 0 0) * HSISCORE(29.5) / NAME = "2 vs 0 hsiscore = 29.5"; SYNTAX ERROR in Statement 18 : (Message 303) Expected '/' to precede option list 19 PRED_EFF ACESCORE = (-1 0 0 1 0) * HSISCORE(29.5) / NAME = "3 vs 0 hsiscore = 29.5"; SYNTAX ERROR in Statement 19 : (Message 303) Expected '/' to precede option list 20 PRED_EFF ACESCORE = (-1 0 0 0 1) * HSISCORE(29.5) / NAME = "4+ vs 0 hsiscore = 29.5"; SYNTAX ERROR in Statement 20 : (Message 303) Expected '/' to precede option list
What version of SAS (what version NUMBER) and what interface (Viya, Studio, Base SAS, etc.) are you running? I find no evidence of a PROC REGRESS in SAS.
I am using SAS-Callable SUDAAN 11.0.4
I don't know who can answer SUDAAN questions here, I certainly can't. But you might want to go back to your original post and enter SUDAAN into the title. This type of information should not be omitted, and is best placed right at the beginning.
Is there an equivalent procedure in SAS that can perform the same function? I think this might be an 'estimate' statement.
PROC GLM
PROC GLIMMIX
Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.
If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website.
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.