turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

- Home
- /
- Analytics
- /
- Stat Procs
- /
- Multiple logistic regression, profile likelihood c...

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-11-2014 04:39 PM

Dear All,

I want to model binary data with a multiple predictor logistic regression and want to show a profile likelihood confidence interval for the (covariate adjusted) odds ratio with a corresponding p-value for one of the predictors (treatment). I'm not too familiar with profile likelihoods but I found out that the confidence interval is obtained by inverting a likelihood-ratio test. So my question is:

(How) Can I produce a p-value that is consistent with the profile likelihood confidence interval?

It seems that SAS does not produce LR-tests for single parameters but only for the complete model against a null model. My idea would be to manually calculate the LR-test for the 2-category treatment parameter like this:

- run proc logistic with 2 predictors for treatment and the covariate, i.e. the full model
- model outcome = treatment covariate
- oddratio statement requesting a profile likelihood confindence interval for treatment odds ratio (adjusted for covariate)

- search the output for the value of -2 Log L for Intercept and Covariates, call it D_full
- run proc logistic again with reduced model without treatment variable but keeping the covariate
- model outcome = covariate

- search the output for the value of -2 Log L for Intercept and Covariates, call it D_red
- calculate p-value = 1-probchi(D_red - D_full, 1)

The p-value obtained in step 5 should be consistent with the profile likelihood confidence interval for the covariate adjusted treatment odds ratio in the sense that if e.g. the 95% the confidence interval does not include 1, then the p-value is below 5%. Or did I miss something?

psj2

Accepted Solutions

Solution

12-19-2014
12:42 PM

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-19-2014 12:42 PM

All Replies

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-11-2014 08:32 PM

Are any of your variables categorical? Are you using a class statement?

Can you post your proc logistic code?

Usually when this happens, the class parameterization hasn't been specified appropriately so the hypothesis are out of line.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-12-2014 05:28 AM

Hi Reeza,

thank you very much for the hint. Right now, I'm not having an discrepancy anywhere but I want to be sure that my thinking is correct, as I have to specify an analysis a-priori and want to be sure that it makes sense. If it turns out to be wrong concept-wise, that would mean some trouble

My question can be re-stated more simple: The test of a parameter in a multiple logistic regression reported by default is a Wald test, so it is consistent with the default odds ratio confidence interval, the two belong together: If the p-value of the parameter is less than 5% then the 95%confidence interval of the corresponding adjusted parameter does not include 1. The question is: Is this also true for the pair of LR test and profile likelihood confidence interval?

To add more detail in my case: The treatment variable is a class variable with 2 classes, the covariate is a center variable with many classes (around 20). Because the variable in question is the treatment variable, it is a class variable with 2 levels, and therefore the chi-square distribution to compare against for the LR test should be the one with 1 df, at least if I got it right

psj2

PS: In SAS code, my idea looks like this: (I have let it run for some example data and it looks ok, but that were only examples )

proc logistic data=foo;

class treatment center;

model outcome(event="1")=treatment center;

oddsratio treatment / CL=PL;

ods output FitStatistics=fullmod OddsRatiosPL=ORs;

run;

proc logistic data=foo;

class center;

model outcome(event="1")= center;

ods output FitStatistics=redmod;

run;

data bar;

merge

fullmod(where=(Criterion="-2 Log L") keep=InterceptAndCovariates Criterion rename=(InterceptAndCovariates=Dfull))

redmod(where=(Criterion="-2 Log L") keep=InterceptAndCovariates Criterion rename=(InterceptAndCovariates=Dred))

ORs

;

pval=1-probchi(Dred-Dfull,1);

keep Effect OddsRatioEst LowerCL UpperCL pval;

run;

proc print noobs label; run;

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-12-2014 09:11 AM

You may want to rethink considering 'center' as a fixed effect, especially if you want to generalize your conclusions regarding the treatment to apply to settings other than the centers at which the study is conducted. If you do so, then shifting to PROC GLIMMIX will "kill two birds with one stone."

The following should (warning untested code) provide likelihood ratio F tests and profile confidence bounds for the odds ratio. This approach will give the odds ratio conditional on the centers--in other words, what odds ratio would you expect to see in any given center, including those not in the study.

proc glimmix data=foo method=laplace;

class treatment center ;

model outcome(event="1")=treatment/dist=binary;

random intercept/subject=center;

lsmeans treatment/diff oddsratio cl;

run;

This code will give marginal odds ratios--what odds ratio would you expect, averaged over all possible centers.

proc glimmix data=foo ;

class treatment center ;

model outcome(event="1")=treatment/dist=binary;

random intercept/subject=center;

lsmeans treatment/diff oddsratio cl;

run;

Hope this helps.

Steve Denham

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-18-2014 07:37 AM

Dear Steve,

Thank you very much for the hint, I'll definitively consider it for my analysis.

But it is still interesting for me to know the answer to my original question above: Is the profile likelihood confidence interval consistent to the likelihood ratio test (outlined above in SAS code), as it is true for the Wald confidence interval and the type III tests in logistic regression (this could even be true for any kind of linear model).

psj2

Solution

12-19-2014
12:42 PM

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-19-2014 12:42 PM

Yes.

Steve Denham

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

12-20-2014 04:05 AM

Thanks, Steve!