Programming the statistical procedures from SAS

How to dummy code different independent groups in a proc surveyreg.

Reply
New Contributor
Posts: 2

How to dummy code different independent groups in a proc surveyreg.

[ Edited ]

Hello,

 

I have 4 independent groups of individuals that I would like to compare in terms of their mental health outcomes (a continuous depression score). I am running a linear reg, with proc surveryreg. I am controlling for a slew of covariates, and adding in a weight statement, since this is survey data. My question has to do with the dummy coding. Is it enough to just reference code using the class statement, or do I need to also include an estimate statement? I will be comparing each of my groups to group 4. What I'm essentially interested in, is getting the parameter estimates and SE for each group against the reference group. 

 

proc surveyreg; 

weight;

class groups(ref='4');

model mentalhealth=Groups /solution;

estimate 'group 1 vs 4' groups 1 0 0 -1;

estimate 'groups 2 vs 4' groups 0 1 0 -1;

.

.

.

run;

Respected Advisor
Posts: 2,655

Re: How to dummy code different independent groups in a proc surveyreg.

[ Edited ]

In my opinion, I think you will find the results of the estimate statements to be more meaningful than just looking at the solution vector.

 

However, you have a problem, in that the variable 'groups' doesn't appear in your MODEL statement.  In the current MODEL statement, the only effect variable is 'cluster', which I don't think refers to group.  You will need to correct one or the other to get any results.

 

Steve Denham

 

 

New Contributor
Posts: 2

Re: How to dummy code different independent groups in a proc surveyreg.

Oops, that was just a typo. 

 

What information does the estimate statement give you, versus the solution vector?

Respected Advisor
Posts: 2,655

Re: How to dummy code different independent groups in a proc surveyreg.

The ESTIMATE statement will enable you to get the difference between levels, given the other covariates.  Much easier would be to use an LSMEANS statement, such as:

 

LSMEANS groups/diff=control('4');

 

Steve Denham

Ask a Question
Discussion stats
  • 3 replies
  • 207 views
  • 1 like
  • 2 in conversation