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

Yesterday I was attempting to score my source dataset in a PROC GENMOD, DIST = NORMAL model that also used the BAYES statement, see this thread:

 

https://communities.sas.com/t5/SAS-Statistical-Procedures/Scoriing-PROC-GENMOD-Dataset-by-hand/m-p/4...

 

With help I figured out how to do it a couple of different ways. Though along the way, at some point, I ran the code and it generated some datasets for all model parameters and those files included the parameter estimate's Kernel values and Densities. I have no idea how I created these datasets (one for every model parameter), since I was trying out a bunch of different code options when trying to address my "scoring" question.  I also don't have the outputted files any more, but they were in my SAS 'work.' folder and had the following naming strategy and included fields called "lag...", "interation...", etc.:

 

'_doctmp000000000000000000019'

 

The 19 in the file name represented the number of the file, since there were multiple parameters and the file names were interative. I have been trying to retrace my footstep for about an hour to no avail. 

 

In conclusion, how do I output individual files for model parameters when using GENMOD with BAYES, files include kernel and density values for parameter?

1 ACCEPTED SOLUTION
2 REPLIES 2
H
Pyrite | Level 9 H
Pyrite | Level 9

Yes, I was able to track it down using the "ODS TRACE ON" line of code, which had to be on the outside of the 'ODS GRAPHICS ON' line.  For any one else in the future looking for kernel data, you can get them with the following code, or also using the PROC KDE code presented further below.

 

ods trace on;
ods graphics on;
ods output  TADPanel=output1;
Proc genmod data=my_dataset;
	class X1 X2;
	model Y = X1 X2 / dist=normal;
	bayes seed=12345 outpost=post;
run;
ods graphics off;
ods trace off;

 

 

Second option, to generate values yourself:

 

proc kde data=post;
   ods exclude inputs controls;
   Univar name_of_posterior_variable /out=sample;
run;

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 885 views
  • 1 like
  • 2 in conversation