Hi!
I'm performing an analysis of 2 treatment groups (group a: ~700; group b: ~1400) and need to calculate the standardized mean difference between the groups. Propensity score adjusted was performed rather than propensity score matching to maintain higher sample size. The majority of category variables are binary but I have a handful that are 3-4 levels, like patient location; patient race; patient marital status.
I used a macro (http://www.lerner.ccf.org/qhs/software/lib/stddiff.sas ) to get the unadjusted SMD, and am using proc glimmix to calculate the adjusted SMD of the categorical variables. I found another macro but it was more geared to propensity score matching.
What is the best way to interpret the proc glimmix output to come up with a single mean difference value between the two treatment groups?
The code I'm using is below- I was advised to not include treatment group as random effect- and outcome.
<code>
proc glimmix data=work.clinical_data;
class trx_group region ;
model region (descending)= trx_group propensity_weight
/ link=cumlogit dist=multi solution;
output out=region predicted(blup ilink)=predProbs lcl(blup ilink)=lower ucl(blup ilink)=upper;;
run;
<Output>
Class Level Information | ||
Class | Levels | Values |
TRX_group | 2 | 0 1 |
REGION | 4 | WEST SOUTH NORTHEAST MIDWEST |
Number of Observations Read | 2156 |
Number of Observations Used | 2156 |
Response Profile | ||
Ordered Value | REGION | Total Frequency |
1 | WEST | 316 |
2 | SOUTH | 820 |
3 | NORTHEAST | 541 |
4 | MIDWEST | 479 |
The GLIMMIX procedure is modeling the probabilities of levels of REGION having lower Ordered Values in the Response Profile table. |
Dimensions | |
Columns in X | 6 |
Columns in Z | 0 |
Subjects (Blocks in V) | 1 |
Max Obs per Subject | 2156 |
Optimization Information | |
Optimization Technique | Newton-Raphson |
Parameters in Optimization | 5 |
Lower Boundaries | 0 |
Upper Boundaries | 0 |
Fixed Effects | Not Profiled |
Iteration History | |||||
Iteration | Restarts | Evaluations | Objective Function | Change | Max Gradient |
0 | 0 | 4 | 2868.0488989 | . | 48.79174 |
1 | 0 | 3 | 2840.3830991 | 27.66579987 | 4.798868 |
2 | 0 | 3 | 2840.3402403 | 0.04285876 | 0.024003 |
3 | 0 | 3 | 2840.3402388 | 0.00000149 | 8.377E-7 |
Convergence criterion (GCONV=1E-8) satisfied. |
Fit Statistics | |
-2 Log Likelihood | 5680.68 |
AIC (smaller is better) | 5690.68 |
AICC (smaller is better) | 5690.71 |
BIC (smaller is better) | 5719.06 |
CAIC (smaller is better) | 5724.06 |
HQIC (smaller is better) | 5701.06 |
Parameter Estimates | |||||||
Effect | REGION | TRX_group | Estimate | Standard Error | DF | t Value | Pr > |t| |
Intercept | WEST |
| -1.4138 | 0.1248 | 2151 | -11.33 | <.0001 |
Intercept | SOUTH |
| 0.4960 | 0.1203 | 2151 | 4.12 | <.0001 |
Intercept | NORTHEAST |
| 1.6671 | 0.1256 | 2151 | 13.27 | <.0001 |
TRX_group |
| 0 | -0.00609 | 0.09912 | 2151 | -0.06 | 0.9510 |
TRX_group |
| 1 | 0 | . | . | . | . |
Propensity_score |
|
| -1.1431 | 0.1834 | 2151 | -6.23 | <.0001 |
Type III Tests of Fixed Effects | ||||
Effect | Num DF | Den DF | F Value | Pr > F |
TRX_group | 1 | 2151 | 0.00 | 0.9510 |
Propensity_score | 1 | 2151 | 38.87 | <.0001 |
I have to say that REGION as a response variable, instead of as a predictor, seems very odd and makes me wonder you really want a model that predicts REGION. Be that as it may, see this note which illustrates using the NLMeans macro with a multinomial model. While the specific example in the note models a nominal response (LINK=GLOGIT) and computes relative risk estimates, you can also use it for an ordinal (LINK=CUMLOGIT) response and obtain difference estimates (which is the default).
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.