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.

 

 

hackathon24-white-horiz.png

The 2025 SAS Hackathon Kicks Off on June 11!

Watch the live Hackathon Kickoff to get all the essential information about the SAS Hackathon—including how to join, how to participate, and expert tips for success.

YouTube LinkedIn

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
  • 1687 views
  • 3 likes
  • 3 in conversation