I have a bunch of articles presenting "OR" with a- 95% CI (confidence intervals).

I want to estimate from the articles the P value for the observed OR. For that, I need an assumption regarding the OR distribution. What distribution can I safely assume/use?


The log odds ratio has a Normal asymptotic distribution :

$\log(\hat{OR}) \sim N(\log(OR), \sigma_{\log(OR)}^2)$

with $\sigma$ estimated from the contingency table. See, for example, page 6 of the notes:

  • $\begingroup$ I had the feeling it would be something of this sort - many thanks! $\endgroup$ – Tal Galili Aug 9 '10 at 18:13
  • $\begingroup$ Some correction should be made to formula above. It is var(log(OR)) not var(OR). $\endgroup$ – Wojtek Aug 13 '10 at 6:34
  • 3
    $\begingroup$ I clicked on the link to see "Asymptotic theory for parametric models" and it was broken. $\endgroup$ – Placidia Oct 18 '12 at 18:18
  • $\begingroup$ Link is dead :( $\endgroup$ – Alby Jul 28 '16 at 15:06

The estimators $\widehat{OR}$ have the asymptotic normal distribution around $OR$. Unless $n$ is quite large, however, their distributions are highly skewed. When $OR=1$, for instance, $\widehat{OR}$ cannot be much smaller than $OR$ (since $\widehat{OR}\ge0$), but it could be much larger with non-negligible probability. The log transform, having an additive rather than multiplicative structure, converges more rapidly to normality. An estimated Variance is: $$ \text{Var}[\ln\widehat{OR}]=\left(\frac{1}{n_{11}}\right)+\left(\frac{1}{n_{12}}\right)+\left(\frac{1}{n_{21}}\right)+\left(\frac{1}{n_{22}}\right). $$ The confidence interval for $\ln OR$: $$ \ln(\hat{OR})\pm z_{\frac{\alpha}{2}}\sigma_{\ln(OR)} $$ Exponentiating (taking antilogs) of its endpoints provides a confidence interval for $OR$.

Agresti, Alan. Categorical data analysis, page 70.

  • 1
    $\begingroup$ +1, Welcome to the site, @Marzieh. I took the liberty of sprucing up your $\LaTeX$ a little bit. Make sure you still like it. $\endgroup$ – gung - Reinstate Monica Oct 18 '12 at 17:31

Generally, with a large sample size it is assumed as reasonable approximation that all estimators (or some opportune functions of them) have a normal distribution. So, if you only need the p-value corresponding to the given confidence interval, you can simply proceed as follows:

  1. transform $OR$ and the corresponding $(c1,c2)$ CI to $\ln(OR)$ and $(\ln(c1),\ln(c2))$
    [The $OR$ domain is $(0,+\infty)$ while $\ln(OR)$ domain is $(-\infty,+\infty)$]
  2. since the length of every CI depends on its level alpha and on estimator standard deviation, calculate $$ d(OR)=\frac{\ln(c2)-\ln(c1)}{z_{\alpha/2}*2} $$ $[\text{Pr}(Z>z_{\alpha/2})=\alpha/2; z_{0.05/2}=1.96]$

  3. calculate the p-value corresponding to the (standardized normal) test statistic $z=\frac{\ln(OR)}{sd(OR)}$

  • $\begingroup$ This site supports LateX commands, you just enclose them in dollar signs. For example to get $(-\infty,\infty)$ write "(-\infty,\infty)" enclosed in $ signs. see the wiki page for syntax, but ignore the 'begin{math}' and 'end{math}' parts, just use dollar sign instead. $\endgroup$ – probabilityislogic Jan 28 '11 at 17:33

Since the odds ratio cannot be negative, it is restricted at the lower end, but not at the upper end, and so has a skew distribution.

  • 5
    $\begingroup$ Thank you for providing this comment! But unless you can quantify the amount of skewness, that fact by itself is not very useful. Plenty of distributional families are skewed but have practical normal approximations, such as the Chi-square (Gamma) and Poisson, and plenty more can be strongly skewed but rendered close to (or exactly) Normal through a simple re-expression of the variable, such as the Lognormal. Could you perhaps amplify your answer to explain how the knowledge of the skewness could be used to estimate p-values from reported ORs? $\endgroup$ – whuber Sep 30 '10 at 3:57

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.