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

I used proc reg and want to output parameterestimates. 

The first time, it works well and output the table I want.

74                            ods output ParameterEstimates=pest2;
75                             ods listing close;
76                              proc reg data=rush.slope_cha_merge_mri;
77                                    model total_GMV_n =bmi_slope apoe_e4/clb;
78                             run;

NOTE: The data set WORK.PEST2 has 3 observations and 10 variables.

However,  when I rerun the code, there is a warning and parameterestimates could not be output. And the warning is still here even I changed the name of output table.

 

Does anyone know how to resolve this?

 

80                             ods output ParameterEstimates=pest2;
81                             ods listing close;

WARNING: Output 'ParameterEstimates' was not created.  Make sure that the output object name, label,
         or path is spelled correctly.  Also, verify that the appropriate procedure options are used
         to produce the requested output object.  For example, verify that the NOPRINT option is not
         used.
WARNING: The current ODS SELECT/EXCLUDE/OUTPUT statement was cleared because the end of a procedure
         step was detected. Probable causes for this include the non-termination of an interactive
         procedure (type quit; to end the procedure) and a run group with no output.
NOTE: PROCEDURE REG used (Total process time):
      real time           14.61 seconds
      cpu time            1.01 seconds


82                              proc reg data=rush.slope_cha_merge_mri;
83                                    model total_GMV_n =bmi_slope apoe_e4/clb;
84                             run;



85
86                             ods output ParameterEstimates=pest3;
87                             ods listing close;

WARNING: Output 'ParameterEstimates' was not created.  Make sure that the output object name, label,
         or path is spelled correctly.  Also, verify that the appropriate procedure options are used
         to produce the requested output object.  For example, verify that the NOPRINT option is not
         used.
WARNING: The current ODS SELECT/EXCLUDE/OUTPUT statement was cleared because the end of a procedure
         step was detected. Probable causes for this include the non-termination of an interactive
         procedure (type quit; to end the procedure) and a run group with no output.
NOTE: PROCEDURE REG used (Total process time):
      real time           21.98 seconds
      cpu time            0.71 seconds


88                              proc reg data=rush.slope_cha_merge_mri;
89                                    model total_GMV_n =bmi_slope apoe_e4/clb;
90                             run;
1 ACCEPTED SOLUTION

Accepted Solutions
WarrenKuhfeld
Ammonite | Level 13

End interactive procedures with a QUIT statement, and always put ODS OUTPUT statements after the PROC statement (even though it is not always required). 

https://documentation.sas.com/doc/en/pgmsascdc/v_018/statug/statug_ods_examples06.htm

 

View solution in original post

2 REPLIES 2
WarrenKuhfeld
Ammonite | Level 13

End interactive procedures with a QUIT statement, and always put ODS OUTPUT statements after the PROC statement (even though it is not always required). 

https://documentation.sas.com/doc/en/pgmsascdc/v_018/statug/statug_ods_examples06.htm

 

ballardw
Super User

Proc REG want a Quit ; statement to end the procedure. It is one of the procedures that is interactive, meaning that you can issue part of the Proc Reg code. Then run additional Model statements with the same data. Until you execute a QUIT; the procedure should show that it is still running.

"Run group" processing means that you can submit the following code:

proc reg data=rush.slope_cha_merge_mri;
   model total_GMV_n =bmi_slope apoe_e4/clb;
run;

look at the output. Then perhaps run this:

   model total_GMV_n =bmi_slope /clb;
run;

the second run means to execute the new model.

Then you submit a QUIT; to end the procedure.

 

There are a number of procedures that support this sort of behavior. In this case it means that you don't have to keep executing the options on the Proc statement that would require reloading the data for each model.

 

 

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 2 replies
  • 1063 views
  • 3 likes
  • 3 in conversation