Hi all! I am modelling the correlation between a rheumatic disease (systemic sclerosis = exposure) and cancer (outcome) using a poisson regression model in proc genmod. My co-variates are age and sex. Individuals with systemic sclerosis (1) are compared to comparators (0) without the disease. The estimate I get from this model is incidence rate ratio. Sex is a binary variable and also ssc. Age is a dicrete variable. Can = cancer. My main model using Proc GENMOD is: proc genmod data=incidence5; class sex(ref="2") ssc(ref = "0"); model can = ssc age sex/ dist=poisson link=log offset=logpy type3; ods output parameterestimates=results; run; (Then I exponentiated my parameterestimates to get estimates that are easier to interpret). Then I would like to estimate the rate difference (and adjusted incidence rate) but this can't be extracted from this proc genmod estimation as I understood it. Therefore I plan to use Proc NLMIXED. I have multiplicated the estimates with 1000 to get /1000 person years as an outcome estimate.The model I have used is: proc nlmixed data=incidence5; lambda = exp(b0 + b1*(ssc=1) + logpy); model can ~ poisson(lambda); estimate "Rate Difference" (exp(b0+b1)-exp(b0))*1000 df=1e8; estimate "incidence rate comparators" exp(b0)*1000 df=1e8; estimate "incidence rate SSc" exp(b0+b1)*1000 df=1e8; run; It worked fine to run this model and I got the expected estimates corresponding to crude estimates calculated outside the model. However I would like to incorporate my co-variates sex and age in this model to receive adjusted estimates of rate difference and incidence rate. I have tried to read about how to do this in the proc nlmixed documentation but didn't find a solution that worked out. Unfortunately I don't have much experience in running models in SAS yet. Do you have any suggestions on how to incorporate my co-variates in the proc NLMIXED model (if possible)? Or to get these estimates in another way/another proc? This is how the procedure of extracting rate difference from proc nlmixed is describes on the SAS support page: Rate difference using the PROC NLMIXED The rate difference can also be estimated by fitting the Poisson model using PROC NLMIXED as follows. The LAMBDA= assignment statement expresses the Poisson mean parameter, lambda, as a function of age, the offset (ln), and the model parameters (b0 and b1). The MODEL statement indicates that the response count, c, is to be modeled as a Poisson variable with mean lambda. The ESTIMATE statement is used to estimate the rate difference. A large degrees of freedom value (df=1e8) is used to produce large-sample (Wald) statistics like those from the NLMeans and NLEstimate macros above. Note that the estimated log rate for age 1 is b0+b1 and the estimated log rate for age 2 is just b0. For details about using PROC NLMIXED, see the NLMIXED documentation. proc nlmixed data=insure;
lambda = exp(b0 + b1*(age=1) + ln);
model c ~ poisson(lambda);
estimate "Rate Difference" exp(b0+b1)-exp(b0) df=1e8;
run; Thank you on beforehand and have a good day! Best, Karin
... View more