I have a data that where the outcome is the proportion of a species observed in an area by a machine on 2 separate days. Since the outcome is a proportion and does not include 0 or 1 I used a beta regression to fit the model. Temperature is used as an independent variable. Here is some toy R code:

d <- data.frame(
  DAY = c(1,1,1,1,2,2,2,2),
  Proportion = c(.4,.1,.25, .25, .5,.3,.1,.1),
  MACHINE = c("A","B","C","D","H","G","K","L"),
  TEMPERATURE = c(rnorm(8)*100)
b <- betareg(Proportion ~ TEMPERATURE,
  data= d, link = "logit", link.phi = NULL, type = "ML")
## Call:
## betareg(formula = Proportion ~ TEMPERATURE, data = d, link = "logit", link.phi = NULL, type = "ML")
## Standardized weighted residuals 2:
##     Min      1Q  Median      3Q     Max 
## -1.2803 -1.2012  0.3034  0.6819  1.6494 
## Coefficients (mean model with logit link):
##               Estimate Std. Error z value Pr(>|z|)    
## (Intercept) -1.0881982  0.2620518  -4.153 3.29e-05 ***
## TEMPERATURE  0.0003469  0.0023677   0.147    0.884    
## Phi coefficients (precision model with identity link):
##       Estimate Std. Error z value Pr(>|z|)  
## (phi)    9.305      4.505   2.066   0.0389 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Above you can see the TEMPERATURE coefficient is .0003469. Exponentiating, exp(.0003469) = 1.000347

Update incorporating replies and comments:

You can see here how increasing temperature by 1 unit from -10 to 10 increase the proportion

nd <- data.frame(TEMPERATURE = seq(-10, 10, by = 1))
nd$Proportion <- predict(b, newdata = nd)
nd$proportion_ratio <- nd$Proportion/(1 - nd$Proportion)
plot(Proportion ~ TEMPERATURE, data = nd, type = "b")

The interpretation is: A 1-unit change in TEMPERATURE leads to a relative change of 1.000347 ≈0.04% in the Proportion: $$\frac{\mathrm{E}(\mathtt{Proportion})}{1-\mathrm{E}(\mathtt{Proportion})}$$

The key word there is relative change so when you compare exp(coef(b))[2] to nd$proportion_ratio[2] / nd$proportion_ratio[1] you'll see they are the same

## ratio of proportion
nd$proportion_ratio[2] / nd$proportion_ratio[1] 
nd$proportion_ratio[-1] / nd$proportion_ratio[-20]
  • $\begingroup$ If the Proportion is what the name suggest it is, then it is discrete, not continuous and logistic regression would be probably more appropriate for modeling it. $\endgroup$
    – Tim
    Mar 15, 2018 at 19:31
  • $\begingroup$ Tim, why? Proportion may be a ratio of two concentrations. User reported value on scale 1-100 (fraction of the 100%). In both cases the proportion is continuous. In the first case, it positive (may be > 1, depending on what is divided by what), in the second case it;s truncated at 0 and 1. $\endgroup$
    – Natalie
    Dec 31, 2019 at 15:39

1 Answer 1


Yes, the logit link can be interpreted like that. It's just not a change in "odds" (= ratio of probabilities) but a change in a ratio of proportions. More formally, the model equation for the expectation is the same as in logistic regression: $$ \mathrm{logit}(\mu_i) = x_i^\top \beta $$ where $\mu_i = \mathrm{E}(y_i)$. For your setup this means: $$ \begin{eqnarray*} \mathrm{logit}(\mathrm{E}(\mathtt{Proportion})) & = & -1.31 + 0.004 \cdot \mathtt{Temperature} \\ \frac{\mathrm{E}(\mathtt{Proportion})}{1 - \mathrm{E}(\mathtt{Proportion})} & = & \exp(-1.31 + 0.004 \cdot \mathtt{Temperature}) \end{eqnarray*} $$ Thus, an absolute 1-unit change in $\mathtt{Temperature}$ leads to a relative change of $\exp(0.004) \approx 0.4\%$ in $\mathrm{E}(\mathtt{Proportion})/(1 - \mathrm{E}(\mathtt{Proportion}))$.

With a bit of practice you can get a reasonable feeling for what this means in the actual expected $\mathtt{Proportion}$. If you don't have that feeling (yet), you can easily compute the effects of the changes in $\mathtt{Temperature}$, e.g.,:

nd <- data.frame(TEMPERATURE = seq(-150, 150, by = 50))
nd$Proportion <- predict(b, newdata = nd)
plot(Proportion ~ TEMPERATURE, data = nd, type = "b")

to check what the absolute changes in Proportion are for certain absolute changes in TEMPERATURE.

  • $\begingroup$ Thank you for your response. To be clear the 1.004 in my example would mean a 1 unit increase in temperature results in a the proportion of species observed by ANY machine to go up .4 percent? When you say "It is not a change in odds but a change in ratio of proportions" is there any way you can post the math that describes that or can the predict(b, newdata) call be coded manually so the math of how the model's coefs get converted to proportions? I see that predict is taking the coefs and new temperature data and showing an increasing relationship but the math is still fuzzy. Thank you again! $\endgroup$ Aug 13, 2017 at 22:50
  • $\begingroup$ It's almost the same as in the logistic regression case - see my updated reply. So the computations are essentially the same but the outcome is not a probability but a proportion. Note, however, that for the modeled beta distribution there are more aspects you can model than just the expectation. The predict method can give you the expected "response" $\mu_i$, or just the linear predictor ("link"), the "precision" parameter $\phi_i$, the variance, quantiles, etc. $\endgroup$ Aug 14, 2017 at 8:23
  • $\begingroup$ Can you be clearer? with exp(.004) - a 1 unit increase in temp increases the odds ratio of what? by .04%? a lay audience will not understand increase in "E/1-E" $\endgroup$ Mar 2, 2018 at 15:49
  • $\begingroup$ When you state "So the computations are essentially the same but the outcome is not a probability but a proportion." Is the proportion you are referring to the original proportion or a proportion of a proportion? In logistic regression the odds ratio is ratio of the odds of being in a category to not being in the category but what does the odds ratio mean when there is no category and the ID is a continuous number (0,1)? Can you provide an interpretation of the .04% that does not involve formulas that lay people would understand? $\endgroup$ Mar 2, 2018 at 16:00
  • 1
    $\begingroup$ The proportion is the original proportion, e.g., in the GasolineYield data yield = 0.5 means that the proportion of 50% of crude oil is converted into gasoline. This corresponds to a ratio of 1 = 0.5/0.5, i.e., as much crude oil is converted as not converted. If this increases by 10% the new ratio is 1.1 corresponding to a proportion of about 0.5238. Thus, the computational steps are essentially the same as in the logit model. Re: explanation for lay people. My experience is that also odds ratios are very hard to understand...hence I use effects plots a lot. $\endgroup$ Mar 4, 2018 at 2:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.