[R] Manually Calculating Odds from POLR Model

John Fox jfox at mcmaster.ca
Tue Aug 16 00:30:58 CEST 2005


Dear Tate,

Your question pertains generally to the treatment of factors in model
formulas and is not particular to polr(). For a brief explanation, see
Section 11.1, "Defining statistical models; formulae," and in particular
Section 11.1.1 on "Contrasts" in the manual An Introduction to R, which is
distributed with R. More detailed explanations are in texts such as Venables
and Ripley, Modern Applied Statistics With S, and my own, An R and S-PLUS
Companion to Applied Regression. 

I hope this helps,
 John

--------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario
Canada L8S 4M4
905-525-9140x23604
http://socserv.mcmaster.ca/jfox 
-------------------------------- 

> -----Original Message-----
> From: Tate Avery [mailto:tate_sterling_avery at hotmail.com] 
> Sent: Monday, August 15, 2005 3:58 PM
> To: jfox at mcmaster.ca
> Cc: r-help at stat.math.ethz.ch
> Subject: RE: [R] Manually Calculating Odds from POLR Model
> 
> John,
> 
> Thank you, the document was very helpful.  I can now 
> calculate the same values generated by predict() when I am 
> using purely numeric input data.
> 
> Another small question arises when I look at the example 
> using 'housing' in the polr() documentation page:
> 
> Running the example produces the following coefficients...
> 
> Coefficients:
>    InflMedium      InflHigh TypeApartment    TypeAtrium   
> TypeTerrace      
> ContHigh
>     0.5663924     1.2888218    -0.5723552    -0.3661912    
> -1.0910195     
> 0.3602834
> 
> Now, if I am trying to perform a prediction and the value for 
> INFL comes in as 'Medium' what is done?  And, what is done for 'low'?
> 
> That seems to be the last missing piece in my understanding 
> of how to convert the model values into predictions.
> 
> Thank you,
> Tate
> 
> >From: "John Fox" <jfox at mcmaster.ca>
> >To: "'Tate Avery'" <tate_sterling_avery at hotmail.com>
> >CC: <r-help at stat.math.ethz.ch>
> >Subject: RE: [R] Manually Calculating Odds from POLR Model
> >Date: Fri, 12 Aug 2005 19:22:23 -0400
> >
> >Dear Tate,
> >
> >If I understand correctly what you're asking, the formulas 
> are on p. 21 
> >of the paper at 
> ><http://socserv.socsci.mcmaster.ca/jfox/Papers/logit-effect-d
isplays.pdf>.
> >But why do you want to do this when you can get the fitted 
> >probabilities from predict()?
> >
> >I hope this helps.
> >  John
> >
> >--------------------------------
> >John Fox
> >Department of Sociology
> >McMaster University
> >Hamilton, Ontario
> >Canada L8S 4M4
> >905-525-9140x23604
> >http://socserv.mcmaster.ca/jfox
> >--------------------------------
> >
> > > -----Original Message-----
> > > From: r-help-bounces at stat.math.ethz.ch 
> > > [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Tate Avery
> > > Sent: Friday, August 12, 2005 2:50 PM
> > > To: r-help at stat.math.ethz.ch
> > > Subject: [R] Manually Calculating Odds from POLR Model
> > >
> > > Hello,
> > >
> > > I am using polr(...) to generate a model.  The summary shows the 
> > > coefficients and the intercepts.
> > >
> > > For example:
> > >
> > >     coefficient for x1 = c1
> > >     coefficient for x2 = c2
> > >
> > >     intercept A|B = i1
> > >     intercept B|C = i2
> > >
> > > I can then run predict(..., type="p") with the model and see the 
> > > odds for each factor.
> > >
> > > For example:
> > >
> > >       A        B        C
> > > 1    0.3     0.5      0.2
> > > 2    0.4     0.1      0.5
> > >
> > > What I really want to be able to do is take the 2 
> coefficients, the 
> > > 2 intercepts, the x1 & x2 values and manually calculate the 
> > > probabilities generated by predict().
> > >
> > > I have been searching quite extensively for the underlying 
> > > calculations that transform the polr output and the input 
> variables 
> > > into the final output odds.  I have tried a number of 
> dead-end roads 
> > > so far.
> > >
> > > So, if anyone has any information on how to do this or 
> where I can 
> > > find out, I would be extremely grateful.
> > >
> > > Thank you for your time,
> > > Tate Avery
> > >
> > > ______________________________________________
> > > R-help at stat.math.ethz.ch mailing list 
> > > https://stat.ethz.ch/mailman/listinfo/r-help
> > > PLEASE do read the posting guide!
> > > http://www.R-project.org/posting-guide.html
> >
> 
>




More information about the R-help mailing list