Hello @mgx,
@mgx wrote:
ERROR: Within-imputation COVB matrix is not symmetric for _Imputation_= 1 in the input COVB= data set.
The rounded variance-covariance matrix is symmetric, but it seems that SAS internally stores the non-rounded matrix and uses that matrix in PROC MIANALYZE. Is there any way to circumvent this problem?
SAS will use the matrix given in the "input COVB= data set" (which you named COV_IMPUT in your other thread). So I would look at this dataset, e.g., with PROC PRINT:
proc print data=cov_imput;
where _imputation_=1;
*format _numeric_ best16.;
run;
to see where (and by how much) the matrix deviates from symmetry. Use the FORMAT statement (commented out above) if you see matrix elements with more than three decimals. Actually this should not happen because, as far as I see, all these numbers arise from
Sigma=round(inv(J)*K*inv(J),0.001);
So if a matrix in COV_IMPUT deviates from symmetry, then the original Sigma must be asymmetric as well, unless you introduced the asymmetry when creating COV_IMPUT from COV. Examining that original Sigma or the code creating COV_IMPUT would then be the next step in the investigation.
... View more