Programming the statistical procedures from SAS

Get Covariance and Correlation Matrix as Output Data in PROC BCHOICE

Reply
Contributor
Posts: 20

Get Covariance and Correlation Matrix as Output Data in PROC BCHOICE

Hi everyone,

 

I am running a BCHOICE procedure and was wondering how I can get the covarance and correlation matrix as an actual data output (and not via running stats=corr or stats=cov).

Furthermore I wondered why the stats=cov table, for example, shows covariances and variances of the covariances itself (e.g. REmean"Attrlvl1"). What sense does it make to show the covariance matrix of the covariance? Possibly, my thinking is wrong so I am glad for help.

Lastly, if I want to draw conclusions to how much my parameters are associated what is the best way? The standard BCHOICE output gives me the mean random estimates (e.g. REmeanAttrlvl1) and its covariaces (e.g. RECovAttrlvl1, Attrlvl 2). So I could interpret them just as I always would with covariates (e.g. Attrlvl1 and Attrlvl2 are positiely associated). However, doesn't the correlation between those two give better interpretable results?

How would you proceed?

 

Thank you very much for your help.

 

Best,

Alex

SAS Employee
Posts: 187

Re: Get Covariance and Correlation Matrix as Output Data in PROC BCHOICE

As with any procedure, you can save any table it produces in a data set by using an ODS OUTPUT statement.  You just need the name of the table you want to save.  If you use the STATS=CORR option, for example, then you could save it as a data set by adding this statement:  

 

ods output corr=mycorr;

 

See this note for more on saving tables. 

Contributor
Posts: 20

Re: Get Covariance and Correlation Matrix as Output Data in PROC BCHOICE

Hi Dave,
thank you very much for your answer. I do know how to get the output tables, however I have my doubs in interpreting them.
Let's say I have two estimates and their covariance is -1.5 and the standard deviation of lvl1 is 0.02 and for lvl2 0.5.
Now if I used the standard formular to calculate the correlation "correlation=covariance/(SD of Lvl1*SD of Lvl2) I would get a number >-1, which doesn't make sense for a correlation.

Thank you very much for your help.

Best,
Alex
Ask a Question
Discussion stats
  • 2 replies
  • 163 views
  • 2 likes
  • 2 in conversation