I'm working on a regression model where Y is inpatient counts distributed according to the zero-inflated negative binomial pdf.
We'd like to fix the trend coefficient on the Y count in the prior 12 month period so that mean(Y_post) = 0.70*mean(Y_pre).
Having discovered the offset trick for forcing coefficients in proc genmod here, how would I construct the offset knowing it's a GLM and not a linear regression?
Do I first need to take a natural log transform of the trend constant since E(Y_post)=exp(beta0 + trend*Y_pre + beta1*x1 + beta2*x2 + ...) for the ZINB distribution?
Or does SAS handle the log transforms for me and I simply code as follows?
%let trend = 0.70;
data analysis_data;
set analysis_data;
y_pre_trend = &trend*y_pre;
run;
proc genmod data=analysis_data;
model y_post = x1 x2 x3 / offset=y_pre_trend dist=zinb;
zeromodel;
run;
I remember @Rick_SAS wrote a blog about it before .
https://blogs.sas.com/content/iml/2020/09/16/restricted-regression-sas.html
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.