Tutorials › Statistical Genetics › Forest Plots and Cohort-Level Diagnostics

GWAS Replication and Meta-Analysis · Tutorial 394 of 989

Forest Plots and Cohort-Level Diagnostics

Interpret forest plots in context and use cohort-level comparisons to identify influential estimates and possible data or modeling problems before interpreting a pooled result.

Advanced 10 min read

What You'll Learn

  • Read effect direction and the null value on a forest plot’s stated scale.
  • Compare confidence-interval widths to assess the precision of cohort estimates.
  • Distinguish a visually unusual cohort estimate from evidence of heterogeneity.
  • Calculate and interpret a fixed-effect heterogeneity statistic from cohort results.
  • Use leave-one-cohort-out estimates to assess influence without treating influence as proof of error.
  • Identify data and modeling features to check when cohort results disagree.

Why Examine Cohorts Before the Pooled Result?

A meta-analysis can produce a precise pooled estimate even when cohort results differ substantially. A forest plot makes those cohort-level estimates visible alongside their uncertainty, so the reader can ask whether the pooled result represents a broadly consistent pattern or is being pulled by one cohort. This is a diagnostic step: a striking cohort result may reflect a genuine difference, random variation, or a data or modeling problem. The plot alone cannot determine which explanation is correct.

This tutorial focuses on reading the plot and checking the cohort estimates that feed into it. It assumes that the effect alleles and phenotype scales have been aligned, and that the estimates and standard errors are suitable for the meta-analysis being displayed. Those checks matter: a forest plot cannot repair incompatible inputs.

Definition: A forest plot displays estimates from multiple cohorts, usually with a confidence interval for each estimate, and often includes a pooled estimate and its confidence interval. For cohort \(i\), let \(\hat{\beta}_i\) be the estimated genetic effect and \(SE_i\) its standard error. The plotted interval communicates uncertainty in \(\hat{\beta}_i\); its horizontal position communicates the estimate’s direction and magnitude on the specified effect scale.

Read the Scale, Direction, and Precision

Start with the axis label and the effect measure. For a regression coefficient or a log odds ratio, the null value is zero: positive estimates lie to the right of zero and negative estimates to the left. If the effect is instead shown as an odds ratio, the null is one. A positive log odds ratio corresponds to an odds ratio greater than one because exponentiation preserves the direction: \(OR_i=e^{\hat{\beta}_i}\). The plot’s legend or caption should make clear which allele is the effect allele and what one unit of effect means, such as one additional effect-allele copy.

A confidence interval’s width conveys precision: narrower intervals indicate more precise estimates, usually because their standard errors are smaller. A conventional approximate 95% interval for a coefficient is \(\hat{\beta}_i \pm 1.96SE_i\), under the usual large-sample normal approximation. Whether it crosses the null is not a measure of effect direction by itself. An interval crossing zero indicates that the data do not distinguish the estimate from zero at the corresponding two-sided 5% level under that approximation; it does not establish that the effect is absent.

Many plots draw larger squares for more precise cohorts, often using a size proportional to inverse variance weight \(w_i=1/SE_i^2\). This convention is common, not universal, so check the legend. A large marker does not mean a larger genetic effect. Nor does a narrow interval imply that the estimate is unbiased: precision describes sampling uncertainty under the model, not protection from a cohort-specific error.

Worked Example: Reading Direction and Precision

Suppose a hypothetical study reports log odds ratios per effect-allele copy for a binary phenotype. The four cohort results are A: \(\hat{\beta}_A=0.08\), \(SE_A=0.04\); B: \(0.02\), \(SE_B=0.03\); C: \(-0.03\), \(SE_C=0.05\); and D: \(0.10\), \(SE_D=0.02\). Use approximate 95% intervals, \(\hat{\beta}_i\pm1.96SE_i\).

For A, the margin is \(1.96(0.04)=0.0784\), giving \([0.0016,\,0.1584]\). For B, the margin is \(1.96(0.03)=0.0588\), giving \([-0.0388,\,0.0788]\). For C, the margin is \(1.96(0.05)=0.0980\), giving \([-0.128,\,0.068]\). For D, the margin is \(1.96(0.02)=0.0392\), giving \([0.0608,\,0.1392]\).

A and D have positive estimates, while C is negative. B is also positive, but its interval crosses zero. D has the narrowest interval and is the most precise of these four estimates; C has the widest and is the least precise. These observations do not establish that D has the largest true effect, or that C’s effect is negative: they describe the estimates and their uncertainty. The intervals overlap, but overlap alone is not a formal test of between-cohort heterogeneity.

Compare Cohort Estimates With Heterogeneity in View

A forest plot is useful for spotting disagreement, but visual separation is not enough to quantify it. For independent cohort estimates with standard errors \(SE_i\), the fixed-effect estimate weights each estimate by its inverse variance. Cochran’s \(Q\) measures the weighted squared departures of cohort estimates from that pooled value. In this setting, \(Q\) is compared with a chi-square distribution with \(k-1\) degrees of freedom under the null model of one common effect, where \(k\) is the number of cohorts. This is a model-based diagnostic, not a test for whether any cohort is erroneous.

$$ w_i=\frac{1}{SE_i^2},\qquad \hat{\beta}_{FE}=\frac{\sum_{i=1}^{k}w_i\hat{\beta}_i}{\sum_{i=1}^{k}w_i},\qquad Q=\sum_{i=1}^{k}w_i(\hat{\beta}_i-\hat{\beta}_{FE})^2. $$

Under independent, approximately normal estimates with a common underlying effect and correctly specified standard errors, \(Q\) has approximately a \(\chi^2_{k-1}\) distribution. A large \(Q\) relative to that distribution signals more dispersion than expected under this common-effect model. It does not identify the cause, and it can be affected by the number and precision of cohorts. As covered in earlier material on heterogeneity, the \(Q\) test also has limited power when there are few cohorts.

Worked Example: A Cohort Estimate Drives Heterogeneity

Consider four hypothetical cohorts estimating a log odds ratio per effect-allele copy: A has \(\hat{\beta}_A=0.10\), \(SE_A=0.03\); B has \(0.09\), \(SE_B=0.04\); C has \(0.11\), \(SE_C=0.03\); and D has \(0.31\), \(SE_D=0.03\). Assume the estimates are independent and the effect scale and allele coding are aligned. The inverse-variance weights are \(1111.11\), \(625\), \(1111.11\), and \(1111.11\), respectively.

The fixed-effect estimate is

$$ \hat{\beta}_{FE} =\frac{1111.11(0.10)+625(0.09)+1111.11(0.11)+1111.11(0.31)} {1111.11+625+1111.11+1111.11} =\frac{634.03}{3958.33} \approx 0.1602. $$

The pooled value lies well above the first three cohort estimates because cohort D has a large positive estimate and a substantial weight. The contributions to \(Q\), using the pooled estimate before rounding, are approximately \(4.023\) for A, \(3.078\) for B, \(2.797\) for C, and \(24.94\) for D. Thus \(Q\approx34.84\), with \(df=4-1=3\); the chi-square tail probability is approximately \(1.3\times10^{-7}\). Under the stated common-effect and independence assumptions, this is strong evidence of excess dispersion. It is not proof that D is wrong. The estimate could reflect a real cohort difference, chance, or a problem in data or modeling that needs investigation.

Use Influence Checks, Not Visual Suspicion Alone

A cohort may look influential because its estimate is far from the others, because it is precise, or both. A straightforward diagnostic is to recalculate the pooled estimate after omitting one cohort at a time. This is called a leave-one-cohort-out analysis. A large change shows that the pooled estimate depends strongly on that cohort. It does not establish that the cohort should be excluded; exclusion requires a defensible reason independent of whether its result is inconvenient.

Worked Example: Leave-One-Cohort-Out Influence

Use the four estimates and weights from the preceding example. Omitting D leaves A, B, and C, with weighted numerator and total weight

$$ 1111.11(0.10)+625(0.09)+1111.11(0.11)=289.58,\qquad 1111.11+625+1111.11=2847.22. $$

Therefore the leave-D-out estimate is \(289.58/2847.22\approx0.1017\), compared with the full fixed-effect estimate \(0.1602\). The change is about \(0.0585\) log-odds units per effect-allele copy. On the odds-ratio scale, these estimates are \(e^{0.1602}\approx1.174\) and \(e^{0.1017}\approx1.107\), respectively. This sizable shift shows that D has substantial influence on the pooled estimate. It does not show whether the full or leave-D-out value is the more valid scientific summary; that requires understanding why D differs.

Influence should be interpreted alongside the cohort’s interval, sample size, allele frequency, imputation quality, phenotype definition, and analysis model. A small cohort with a wide interval may have an extreme point estimate but little influence on an inverse-variance pooled result. Conversely, a precise estimate that differs from the others can strongly affect the pooled result. Examine both the plotted estimate and its weight, rather than judging influence by distance from the center alone.

Translate Intervals Carefully

When a coefficient is on the log-odds scale, it can be exponentiated to report an odds ratio, but the interval endpoints must also be exponentiated. The interval remains an interval for the underlying parameter under the model; it is not a probability statement about where the fixed parameter lies. The calculation below also illustrates why unrounded endpoints should be retained until the final presentation.

Worked Example: Converting a Pooled Interval to Odds Ratios

Suppose a hypothetical pooled estimate is \(\hat{\beta}=0.0803\) with \(SE=0.0242\), on the log-odds scale per effect-allele copy. Using the normal approximation, its 95% interval is

$$ 0.0803\pm1.96(0.0242) =0.0803\pm0.047432 =[0.032868,\,0.127732] \approx[0.03287,\,0.12773]. $$

Exponentiating the estimate gives \(e^{0.0803}\approx1.084\), and exponentiating the limits gives \([e^{0.032868},e^{0.127732}]\approx[1.033,\,1.136]\). Under the fitted model, the estimated odds are about 1.084 times as large per effect-allele copy, with an approximate 95% confidence interval from 1.033 to 1.136. This is an association estimate, not evidence that the allele causes the phenotype. Because the interval excludes one on the odds-ratio scale (equivalently, zero on the log-odds scale), it is inconsistent with the null at the corresponding two-sided 5% level under the approximation.

From a Diagnostic Signal to a Cohort Review

When cohort estimates disagree or one cohort is highly influential, treat the plot as a prompt for targeted checks. Begin with the inputs and then examine the analyses that produced them. A cohort-level review can include:

  • Allele and effect coding: confirm that estimates refer to the same effect allele and that strand, allele frequency, and effect direction were harmonized.
  • Phenotype and effect scale: check that phenotype definitions, transformations, units, and reported effect measures are comparable across cohorts.
  • Uncertainty and variant quality: verify that standard errors are plausible and inspect variant availability, imputation quality, and allele frequency where appropriate.
  • Model and sample structure: review covariate adjustment, relatedness handling, ancestry composition, and possible sample overlap, because these can affect estimates or their uncertainty.
  • Influence and robustness: compare the full result with leave-one-cohort-out estimates and inspect whether the discrepancy is isolated or shared by several cohorts.

A coherent difference across cohorts may be scientifically meaningful, while a discrepancy caused by mismatched coding or an unstable model requires correction before interpretation. The distinction cannot be made from \(Q\), an interval, or an influence calculation alone. Document the concern, investigate it using cohort-level information, and avoid selecting a pooled result solely because it is statistically stronger or more convenient.

Common Mistakes

  • Wrong: “The cohort interval crosses zero, so there is no genetic effect.” Correction: It indicates uncertainty compatible with zero at that confidence level; it does not establish absence of an effect.
  • Wrong: “The most distant point is an outlier and should be removed.” Correction: Distance is a signal to investigate. Check its precision, data, coding, and model, and do not exclude a cohort without a defensible reason.
  • Wrong: “A significant \(Q\) test proves that one cohort has a data error.” Correction: It indicates excess variation relative to the common-effect model under its assumptions, not the source of that variation.
  • Wrong: “Overlapping confidence intervals mean there is no heterogeneity.” Correction: Interval overlap is not a formal heterogeneity test. Compare estimates with an appropriate heterogeneity assessment and inspect cohort-level context.
  • Wrong: “The pooled estimate is the best estimate because its interval is narrow.” Correction: A narrow interval reflects modeled precision. It does not guarantee comparable inputs or rule out influential cohort-specific problems.
Key takeaway: Read a forest plot in three passes: establish the effect scale and null, compare cohort directions and precision, then assess heterogeneity and influence. Use any unusual pattern to guide cohort-level checks, not as a standalone verdict about validity.

Check Your Understanding

Answer using the effect scale and assumptions stated in each question.

  1. On a plot of log odds ratios, what is the null value, and how does a positive estimate relate to the odds-ratio scale?
  2. Two cohorts have estimates of similar magnitude, but one has a much narrower confidence interval. What does that difference indicate, and what does it not establish?
  3. Why does a large contribution to \(Q\) identify a discrepancy but not prove a cohort’s result is erroneous?
  4. In a leave-one-cohort-out analysis, the pooled estimate changes substantially when one cohort is omitted. What can you conclude, and what can you not conclude?
  5. Name two cohort-level features you would check before interpreting a strongly discordant estimate.
Clinical Biostats