<p>If I understand correctly, what you are proposing is estimating:
<span class="math-container">$$y = \gamma_0 + \gamma_1 \cdot x + \xi $$</span>
and then using the confidence interval of <span class="math-container">$\gamma_1$</span> to estimate the range of elasticities:
<span class="math-container">$$ [\frac{\gamma_1 - 2 \cdot \sigma{\gamma_1}}{y} \cdot x, \frac{\gamma_1 + 2 \cdot \sigma{\gamma_1}}{y} \cdot x] $$</span></p>

<p>This is wrong, essentially because of <a href="https://en.wikipedia.org/wiki/Jensen%27s_inequality" rel="nofollow noreferrer">Jensen's inequality</a> (<span class="math-container">$E[f(x)]\neq f(E[x])$</span>). You should absolutely take into account the non-linear uncertainty when calculating the confidence interval. Fortunately, this is easy. If you run the regression estimate of <span class="math-container">$$\ln(y) = \beta_0 + \beta_1 \cdot \ln(x) + \epsilon$$</span>
then the confidence interval of <span class="math-container">$\beta_1$</span> is the confidence interval of the elasticity. </p>

<p>In follow up discussion, the questioner asks if it is possible to do this with the linear regression coefficient (<span class="math-container">$\gamma_1$</span>), along with <span class="math-container">$\bar{x},\bar{y}$</span> and the associated standard errors? Why would you want to know the elasticity at the average values instead of the average implied elasticity over all x-y pairs? The beta parameter is estimated on the full population so why not the elasticity too? Because all we only know the average values and the linear regression coefficient. </p>

<p>In principle, you can do a Monte Carlo simulation like the following:
<span class="math-container">$$ \hat{elasticity}= (\hat{\gamma} + SE_{\gamma} * N(0,1)) * (\bar{x}+ SE_{\bar{x}} * N(0,1)) / (\bar{y}+ SE_{\bar{y}} * N(0,1))$$</span> 
do a bunch of simulations, and use this to make a confidence interval around the elasticity estimate. </p>

<p>In simulations that I ran, this did result in 95% standard errors that included the true value, but that might simply be a function of the parameters I tried. Unsurprisingly, the resulting standard errors on the elasticity are much larger than in log specification.  </p>

CC BY-SA 4.0
2019-09-19T18:16:30.127Z
Thanks so much for your reply. Sorry if I was confusing - I was not proposing that for the confidence interval. I was saying that I know calculating the confidence interval for beta is straightforward, but not so for the elasticity unless I run a log log regression. In a situation where you just have the linear regression, how do you computer the confidence interval for elasticity (i.e., B*x/y)? As a note, I am using the means for x and y, and of course those have standard deviations etc...
Brooke
CC BY-SA 4.0
2019-09-19T18:55:30.937Z
Why would you want to know the elasticity at the average values instead of the average implied elasticity over all x-y pairs?  The beta parameter is estimated on the full population so why not the elasticity too?  Or is it just that we only know the average values and the linear regression coefficient?
BKay
CC BY-SA 4.0
2019-09-19T20:57:47.563Z
yes exactly - that is all we know.
Brooke
CC BY-SA 4.0
2019-09-18T16:25:18.913Z
2019-09-21T21:02:05.680Z
2019-09-21T21:02:05.680Z
BKay
<p>I'm pretty sure this is a very simple question that I am missing something obvious. I have a simple linear regression with multiple independent variables. I want to calculate the elasticity (no problem - <span class="math-container">$\frac{\partial y}{\partial x} \cdot \frac{x}{y}$</span>), but also report the confidence interval for the elasticity. I know it's straightforward to compute the confidence interval for <span class="math-container">$\beta$</span> (<span class="math-container">$\hat{\beta} \pm t^{*}_{\alpha} \cdot \sigma_{\beta}$</span> ). But for the confidence interval for the elasticity, would it be the same range? Or do I need to account for the transformation (<span class="math-container">$\beta * x/y$</span>)? </p>

<elasticity><regression>
Confidence Intervals for Elasticity in Simple Linear Regression
Brooke
# Confidence Intervals for Elasticity in Simple Linear Regression

(Asked by: username_0 on 2019-09-18)

I'm pretty sure this is a very simple question that I am missing something obvious. I have a simple linear regression with multiple independent variables. I want to calculate the elasticity (no problem - $\frac{\partial y}{\partial x} \cdot \frac{x}{y}$), but also report the confidence interval for the elasticity. I know it's straightforward to compute the confidence interval for $\beta$ ($\hat{\beta} \pm t^{\*}\_{\alpha} \cdot \sigma\_{\beta}$ ). But for the confidence interval for the elasticity, would it be the same range? Or do I need to account for the transformation ($\beta \* x/y$)?

**Tags:** elasticity, regression


---

## 1 answers

### Answer by username_1 on 2019-09-18. Score: 3

If I understand correctly, what you are proposing is estimating:
$$y = \gamma\_0 + \gamma\_1 \cdot x + \xi $$
and then using the confidence interval of $\gamma\_1$ to estimate the range of elasticities:
$$ [\frac{\gamma\_1 - 2 \cdot \sigma{\gamma\_1}}{y} \cdot x, \frac{\gamma\_1 + 2 \cdot \sigma{\gamma\_1}}{y} \cdot x] $$

This is wrong, essentially because of [Jensen's inequality](https://en.wikipedia.org/wiki/Jensen%27s_inequality) ($E[f(x)]\neq f(E[x])$). You should absolutely take into account the non-linear uncertainty when calculating the confidence interval. Fortunately, this is easy. If you run the regression estimate of $$\ln(y) = \beta\_0 + \beta\_1 \cdot \ln(x) + \epsilon$$
then the confidence interval of $\beta\_1$ is the confidence interval of the elasticity.

In follow up discussion, the questioner asks if it is possible to do this with the linear regression coefficient ($\gamma\_1$), along with $\bar{x},\bar{y}$ and the associated standard errors? Why would you want to know the elasticity at the average values instead of the average implied elasticity over all x-y pairs? The beta parameter is estimated on the full population so why not the elasticity too? Because all we only know the average values and the linear regression coefficient.

In principle, you can do a Monte Carlo simulation like the following:
$$ \hat{elasticity}= (\hat{\gamma} + SE\_{\gamma} \* N(0,1)) \* (\bar{x}+ SE\_{\bar{x}} \* N(0,1)) / (\bar{y}+ SE\_{\bar{y}} \* N(0,1))$$
do a bunch of simulations, and use this to make a confidence interval around the elasticity estimate.

In simulations that I ran, this did result in 95% standard errors that included the true value, but that might simply be a function of the parameters I tried. Unsurprisingly, the resulting standard errors on the elasticity are much larger than in log specification.

> **Comments:**
> **username_0**: Thanks so much for your reply. Sorry if I was confusing - I was not proposing that for the confidence interval. I was saying that I know calculating the confidence interval for beta is straightforward, but not so for the elasticity unless I run a log log regression. In a situation where you just have the linear regression, how do you computer the confidence interval for elasticity (i.e., B*x/y)? As a note, I am using the means for x and y, and of course those have standard deviations etc...  
> **username_1**: Why would you want to know the elasticity at the average values instead of the average implied elasticity over all x-y pairs?  The beta parameter is estimated on the full population so why not the elasticity too?  Or is it just that we only know the average values and the linear regression coefficient?  
> **username_0**: yes exactly - that is all we know.  

---

