My dependent variable, $Y$, contains values anywhere from -1 to 1 (i.e. it is bounded continuously on the range $[-1,1]$). I know that a regular OLS regression on such a variable would sometimes create predictions that would go under -1, or above 1, and I immediately thought a link function could be of use here (as it is in the case of logistic regression with binary variables), but it seems no link functions specifically constrain the predicted output to be in the aforementioned range.

Neither Python's statsmodels', not even wikipedia, mention a link function that could help out in this situation.

What would be the way to approach such a modelling problem? If a link function does not exist for this specific case, are there other ways to handle such a dependent variable?

Thank you ahead of time for any advice.

  • 1
    $\begingroup$ You'll find it easier if you define a new response, $Y^* = (Y+1)/2$. Then standard beta regression (for example) can readily be applied. Since that's a linear transformation, any coefficients or predictions are easily obtained for the original reponse. $\endgroup$
    – Glen_b
    Commented Aug 5, 2019 at 8:46
  • $\begingroup$ @Glen_b But what is OP going to do about extremes 0 and 1? $\endgroup$ Commented Aug 6, 2019 at 6:02
  • $\begingroup$ If exact -1 or 1s occur a zero-one inflated beta model would be my first thought. $\endgroup$
    – Glen_b
    Commented Aug 6, 2019 at 8:20
  • $\begingroup$ Huh, and is the zero-one inflated beta model a direct extension of beta regression, that assumedly tapers off the extreme ends of the range (0 and 1 here)? $\endgroup$
    – Coolio2654
    Commented Aug 6, 2019 at 19:57

1 Answer 1


I am going to assume you want a link function on the open interval $(-1,1)$, since you want this to map continuously onto the real numbers. There are infinitely many monotonic link functions $g: (-1,1) \rightarrow \mathbb{R}$ that map from your desired domain to the set of all real numbers. Taking the function to be strictly increasing, every link function of this form can be characterised in terms of a strictly increasing CDF $F$ for a random variable with support given by the set of real numbers. Specifically, you have:

$$g(\mu) = 2 ( F^{-1}(\mu) - \tfrac{1}{2} ).$$

Inverting this relationship gives the mean function:

$$\mu = F \bigg( \frac{1}{2} \big( 1+g(\mu) \big) \bigg) = \mathbf{X} \boldsymbol{\beta}.$$

Since there are an infinite number of strictly increasing CDFs on the reals there are an infinite number of link functions of this form. Some simple examples that are sometimes used in GLMs are the following:

$$\begin{equation} \begin{aligned} g(\mu) &= \frac{2}{\pi} \cdot \tan (\mu), \\[10pt] g(\mu) &= \text{artanh} (\mu), \\[10pt] g(\mu) &= 2 ( \Phi (\mu) - \tfrac{1}{2} ). \\[10pt] \end{aligned} \end{equation}$$

  • $\begingroup$ Thank you for giving some of the background necessary to analyze link functions. Could you give an example of a link function that would directly enable running a regular regression on the kind of data I have, and how to derive such a function? $\endgroup$
    – Coolio2654
    Commented Aug 5, 2019 at 19:53
  • $\begingroup$ Any link function of the above form would be a reasonable mapping to start with, and then you would look at diagnostic plots of the deviance residuals to see if the model is reasonable. $\endgroup$
    – Ben
    Commented Sep 12, 2019 at 22:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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