I assume you want the marginal rates for sex, age, alcohol and smokes. Try this:
proc genmod data=g.filename;
class age sex alcohol smokes;
model cases=age sex alcohol smokes / offset=logpyr dist=nb link=log type3;
lsmeans age sex alcohol smokes/ilink cl diff means;
run;
As in the first example in the note your referenced, this will give you the rates for each level of age, averaged over sex, alcohol and smokes; the rates for each level of sex, averaged over age, alcohol and smokes; the rates for each level of alcohol, averaged over age, sex and smokes; and the rates for each level of smokes, average over age, sex and alcohol.
If you want more specific comparisons, then you will need to include interactions in the model and look at the lsmeans for the interacting variables. This is where the STORE and PROC PLM method can become more useful.
If you have a lot of levels for age, you may want to make it a continuous effect.
SteveDenham
... View more