Hi I have imputed missing values in my dataset by proc mi and wants to provide odds ratios and parameterestimates in seperate datasets on the interaction between a categorical (age, two levels) and continuous (Att24_pa: number of relapses per year) variable. However, when I run proc logistic with an ODDSRATIO statement followed by ods out, I only get datasets with odds ratios and parameterestimates on the variables not included in the interactionterm (here: sex, diseaseDurationYrs and baselineedss). "_mi_fcs_komplet" is the dataset with imputed missing values. So, when I run this model, I get one odds ratio from each level in the age category for the increment in the continuous Att24_pa variable. And I need to output these two estimates with confidence intervals so I can combine them using proc mianalyze, followed by log-transforming, combining again and, finally, back-transformation. Also, I'm not sure whether the proc mianayze statement is correct for interaction terms. This is the code I have used: proc logistic data=_mi_fcs_komplet ; by _Imputation_; *100 imputations; class Efficacy (ref='No') age (ref=">=40") sex (ref="2 Female") ; model Efficacy = age|Att24_pa sex diseaseDurationYrs baselineedss ; oddsratio att24_pa ; *This is the information I need to be outputted; ODS OUTPUT PARAMETERESTIMATES=lgsparms ODDSRATIOS=lgsodds; run; /* Combining the 100 imputations */ proc mianalyze parms(classvar=CLASSVAL )=lgsparms; class age sex; modeleffects age|Att24_pa sex diseaseDurationYrs baselineedss; ODS OUTPUT PARAMETERESTIMATES=mian_ /*lgsparms*/; run; *** Log-transform odds ratio estimates and obtain standard error from confidence intervals ***; *Får dog kun alderseffekten ud her; DATA lgsodds_t; SET lgsodds(WHERE=(INDEX(EFFECT,"att24_pa"))); log_or_lr_value=LOG(ODDSRATIOEST); log_or_lr_se=(LOG(UPPERCL)-LOG(LOWERCL))/(2*1.96); RUN; *** Combine transformed estimates; PROC MIANALYZE DATA=lgsodds_t; ODS OUTPUT PARAMETERESTIMATES=mian_lgsodds_t; MODELEFFECTS log_or_lr_value; STDERR log_or_lr_se; RUN; *** Back-transform combined values; DATA mian_lgsodds_bt; SET mian_lgsodds_t; Estimate_back = EXP(ESTIMATE); *Pooled odds ratio; LCL_back=Estimate_back*EXP(-1.96*STDERR); *Pooled lower limit; UCL_back=Estimate_back*EXP(+1.96*STDERR); *Pooled upper limit; RUN; Any help would be much appreciated. Many Thanks, Tine
... View more