Assume we have the following system of equations

Eq. 1: $z = x\gamma + \epsilon$

Eq. 2: $y = z\theta + x\beta + \eta$

where the error terms fulfill standard assumptions. Simulating data from Eq. 1 and Eq. 2 and estimating Eq. 2 using OLS gives an unbiased estimate of $\theta$ because we condition on $x$. Similarly, we can use a different parametrization of the problem and write

Eq. 3: $y = (z - x\gamma)\theta + x\rho + \eta$

where we made explicit that $\theta$ is the effect of the exogenous variation in $z$ on $y$. Using Eq. 3 to simulate the data and Eq. 2 to estimate the parameters results in the same estimate of $\theta$ as before. So far, so good.

I am interested in including an interaction term between $x$ and $z$ in the model like follows

Eq. 4: $y = z\theta + zx\delta + x\tau + \kappa.$

Simulating data from Eq. 4 and estimating the parameters using OLS gives unbiased estimates of $\delta$ and $\theta$. Based on these results, I was expecting that simulating from

Eq. 5: $y = (z - x\gamma)\theta + (z - x\gamma)x\delta + x\nu + \zeta$

and estimating a specification like in Eq. 4 using OLS will also give unbiased results for $\theta$ and $\delta$. However, while the estimate of $\theta$ is unbiased, the estimate of $\delta$ is now heavily biased. I do not really have an explanation for this, but I assume that it has to do with the fact that $z$ is exogenous conditional on $x$, while $z*x$ is not exogenous conditional on $x$. Any thoughts are appreciated. Here is my simulation code in R.

  • $\begingroup$ Update: Estimating Eq. 4 using data generated from Eq. 5 gives unbiased estimates of $\theta$ and $\delta$ when additionally controling for $x^2$. However, I estimated this specification due to intuition and not based on a formal derivation. When controlling for $x$ orthogonalizes $z$, we'd need to control for $x*x$ to orthogonalize $z*x$. While this seems to work, I'd still be happy to receive a pointer to a formal explanation of this. $\endgroup$
    – yrx1702
    Commented Mar 31, 2021 at 11:04

1 Answer 1


When you $z-\gamma x$, you recover the error $\eta$ and, since it is an additive linear model, the information in $z$ about $\gamma x$ is given to $\beta$. This does not apply for $xz$ or $x(\gamma x + \eta)$, which we can easily see is not equal to $(z - x\gamma)x$ or $\eta x$. To get a correct eq 5, it should be :

y = beta * x + (theta + delta * x) * z + err

If you want to remove $z$, then

x = rnorm(n)
eta = rnorm(n)
z = x * gamma + eta
y = beta * x + (theta + delta * x) * (gamma*x + eta) + err

Regarding your comment, Eq 4 is correct, and you see where $x^2$ comes from.

Hope, it helps.

  • $\begingroup$ Thanks, that did help. Now it's clear why my "reparametrization" actually is not a reparametrization but a different model. $\endgroup$
    – yrx1702
    Commented Mar 31, 2021 at 13:59
  • $\begingroup$ It is a nice illustration on why measurement error ($\eta$) is so problematic in moderation analysis. $\endgroup$
    – POC
    Commented Apr 7, 2021 at 12:30

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.