Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Changing reference group for categorical predictor variable in logistic regression

Tags:

r

I'm running a logistic regression with a categorical predictor variable with levels 0-6. By default, R considers level 0 as the reference group.

How can I tell R to use, for example, level 3 instead of level 0 as reference without renaming the levels?

like image 456
half-pass Avatar asked Jun 12 '12 18:06

half-pass


2 Answers

Use the C function to define your contrasts in the dataframe.

If your dataframe is DF and the factor variable is fct, then

DF$fct <- C(DF$fct, contr.treatment, base=3)

(untested).

like image 111
Brian Diggs Avatar answered Sep 28 '22 09:09

Brian Diggs


This is very easy with Frank Harrell's packages (which allows for many additional functions).
For example, for a dataframe named 'df'

library(Hmisc) 
library(rms)
dd=datadist(df)
options(datadist='dd')
(m=lrm(y ~ catvar, data=df)) #uses the mode as the reference group
summary(m, catvar=3) #using level=3 as the reference group
summary(m, catvar=0) #using level=0 as the reference group

(And, some sample data would have been nice - you can always use dput to output a small dataset)

like image 36
David F Avatar answered Sep 28 '22 09:09

David F