Help using Base SAS procedures

Contrast statement in Phreg for linear trend

New Contributor
Posts: 3

Contrast statement in Phreg for linear trend


I have a 6 level categorical variable and want a linear trend for the hazard ratios.

Should the contrast statement have 5 levels ignoring the reference group?


proc phreg data=trcs ;

class rumol5A  /order=internal ;

model age*censor1(1) =rumol5A /rl;

contrast ' LINEAR EFFECT'   rumol5A -2 -1 0 1 2  /e;


I've found online that these are the numbers to use for a linear effect for 5 coefficients but I can't find an easy explanation of why. Can someone confirm the above and provide an explanation?

Thanks in advance.

Respected Advisor
Posts: 2,655

Re: Contrast statement in Phreg for linear trend

I think under the default parameterization (REF, with the reference level being the last level), your code looks right.  It excludes the last level.  However, that may not be what you want or need.  What values does rumol5A take on?  You may need to change the parameterization to get what you want.  I know if you used:

class rumol5A/order=internal param=GLM;

then the correct contrast would be:

contrast 'Linear effect' rumol5A -5 -3 -1 1 3 5 /e;

as the GLM parameterization requires all levels to be included.

As far as the coefficients, they provide a linear only contrast that has coefficients that sum to zero.  To derive them, take the ordinal values of the levels, find their mean, subtract the mean from the ordinal value, and convert all to integers by multiplying each by an appropriate constant.

Steve Denham

Ask a Question
Discussion stats
  • 1 reply
  • 2 in conversation