This example creates data sets that contains parameter estimates and corresponding covariance matrices computed by a generalized linear model analysis for a set of imputed data sets. These estimates are then combined to generate valid statistical inferences about the model parameters.
The following statements use PROC GENMOD to generate the parameter estimates and covariance matrix for each imputed data set:
proc genmod data=outmi; model Oxygen= RunTime RunPulse/covb; by _Imputation_; ods output ParameterEstimates=gmparms ParmInfo=gmpinfo CovB=gmcovb; run;
The following statements print (in Output 62.5.1) the output parameter estimates and covariance matrix from PROC GENMOD for the first two imputed data sets:
proc print data=gmparms (obs=8); var _Imputation_ Parameter Estimate StdErr; title 'GENMOD Model Coefficients (First Two Imputations)'; run;
Output 62.5.1: PROC GENMOD Model Coefficients
GENMOD Model Coefficients (First Two Imputations) |
Obs | _Imputation_ | Parameter | Estimate | StdErr |
---|---|---|---|---|
1 | 1 | Intercept | 86.5440 | 9.5107 |
2 | 1 | RunTime | -2.8223 | 0.3120 |
3 | 1 | RunPulse | -0.0587 | 0.0556 |
4 | 1 | Scale | 2.6692 | 0.3390 |
5 | 2 | Intercept | 83.0207 | 8.4489 |
6 | 2 | RunTime | -3.0002 | 0.3217 |
7 | 2 | RunPulse | -0.0249 | 0.0488 |
8 | 2 | Scale | 2.5727 | 0.3267 |
The following statements display the parameter information table in Output 62.5.2. The table identifies parameter names used in the covariance matrices. The parameters Prm1
, Prm2
, and Prm3
are used for the effects Intercept
, RunTime
, and RunPulse
, respectively, in each covariance matrix.
proc print data=gmpinfo (obs=6); title 'GENMOD Parameter Information (First Two Imputations)'; run;
Output 62.5.2: PROC GENMOD Model Information
GENMOD Parameter Information (First Two Imputations) |
Obs | _Imputation_ | Parameter | Effect |
---|---|---|---|
1 | 1 | Prm1 | Intercept |
2 | 1 | Prm2 | RunTime |
3 | 1 | Prm3 | RunPulse |
4 | 2 | Prm1 | Intercept |
5 | 2 | Prm2 | RunTime |
6 | 2 | Prm3 | RunPulse |
The following statements display (in Output 62.5.3) the output covariance matrices from PROC GENMOD for the first two imputed data sets. Note that the GENMOD procedure computes maximum likelihood estimates for each covariance matrix.
proc print data=gmcovb (obs=8); var _Imputation_ RowName Prm1 Prm2 Prm3; title 'GENMOD Covariance Matrices (First Two Imputations)'; run;
Output 62.5.3: PROC GENMOD Covariance Matrices
GENMOD Covariance Matrices (First Two Imputations) |
Obs | _Imputation_ | RowName | Prm1 | Prm2 | Prm3 |
---|---|---|---|---|---|
1 | 1 | Prm1 | 90.453923 | -0.483394 | -0.497473 |
2 | 1 | Prm2 | -0.483394 | 0.0973159 | -0.003113 |
3 | 1 | Prm3 | -0.497473 | -0.003113 | 0.0030954 |
4 | 1 | Scale | 1.344E-15 | -1.09E-17 | -6.12E-18 |
5 | 2 | Prm1 | 71.383332 | -0.603037 | -0.378616 |
6 | 2 | Prm2 | -0.603037 | 0.1034766 | -0.002826 |
7 | 2 | Prm3 | -0.378616 | -0.002826 | 0.0023843 |
8 | 2 | Scale | 1.602E-14 | 1.755E-16 | -1.02E-16 |
The following statements use the MIANALYZE procedure with input PARMS=, PARMINFO=, and COVB= data sets:
proc mianalyze parms=gmparms covb=gmcovb parminfo=gmpinfo; modeleffects Intercept RunTime RunPulse; run;
Since the GENMOD procedure computes maximum likelihood estimates for the covariance matrix, the EDF= option is not used. The resulting model coefficients are identical to the estimates in Output 62.3.3 in Example 62.3. However, the standard errors are slightly different because in this example, maximum likelihood estimates for the standard errors are combined without the EDF= option, whereas in Example 62.3, unbiased estimates for the standard errors are combined with the EDF= option.