Tutorials › Bayesian Clinical Trials › Forest Plots For Hierarchical Basket Results

Hierarchical Models and Basket Trials · Tutorial 503 of 696

Forest Plots For Hierarchical Basket Results

Learn how to display partially pooled basket effects with uncertainty while distinguishing subgroup estimates, the population-level mean, and between-subgroup variation.

Advanced 11 min read

What You'll Learn

  • Select a common effect scale and reference lines for a hierarchical basket forest plot.
  • Display subgroup posterior summaries alongside the population-level mean and between-subgroup variation.
  • Distinguish marginal posterior intervals from intervals conditional on fixed hierarchy parameters.
  • Interpret transformed effect scales and their no-effect reference values.
  • Identify plotting choices that can exaggerate similarity, difference, or certainty.
  • Separate uncertainty about the population mean from variation among subgroup effects.

What a Hierarchical Forest Plot Shows

A forest plot can make a hierarchical basket analysis easier to inspect: it places each basket’s estimated treatment effect on a common scale, shows its uncertainty, and provides context for the population-level mean and the amount of variation across baskets. Its job is to display the fitted model’s estimates clearly, not to turn a visual pattern into a new statistical test.

The plot is useful only if its different elements are labelled precisely. A subgroup estimate describes an individual basket’s effect; the population-level mean describes the center of the hierarchical distribution; and the between-subgroup standard deviation describes how dispersed basket effects are around that center. These quantities answer different questions and should not be represented as though they were interchangeable.

Definition: Let \(\theta_j\) be the treatment effect in basket \(j\), for \(j=1,\ldots,J\). In a normal hierarchical model, \(\theta_j\mid\mu,\tau\sim N(\mu,\tau^2)\), where \(\mu\) is the population-level mean effect and \(\tau\) is the between-basket standard deviation. A forest plot for the fitted model commonly displays a posterior summary and credible interval for each \(\theta_j\), a posterior summary and credible interval for \(\mu\), and a separate summary of the posterior distribution of \(\tau\).

For each basket, the plotted interval should usually summarize the marginal posterior of its effect: uncertainty in \(\mu\) and \(\tau\) is integrated over, rather than held fixed. The earlier material on reporting subgroup estimates with partial pooling establishes the role of those subgroup summaries; the plot adds a visual arrangement that makes their scales and uncertainty directly comparable. The horizontal axis must identify the effect measure and units. For a continuous outcome, for example, positive values might mean more symptom-score improvement, in score points.

A vertical reference line at zero marks no difference on an additive effect scale. A second line can mark a prespecified clinically important effect, if that threshold is defined on the same scale. For a ratio measure, the no-effect value is typically one rather than zero. The plot’s labels should state which direction favors treatment; a reader should not have to infer that from the ordering of the baskets.

Constructing the Plot from Posterior Summaries

Suppose a fitted model provides posterior draws of \(\theta_1,\ldots,\theta_J,\mu,\tau\). For each basket, summarize its marginal posterior with a measure of center, such as the posterior mean or median, and a credible interval, commonly the central 95% interval. A 95% credible interval is an interval containing 95% of the posterior probability for that parameter, conditional on the model, prior, and observed data. It is not a confidence interval, and its endpoints are not estimates of the most extreme plausible effects.

Use one effect scale and consistent interval definitions for all baskets. If posterior distributions are skewed, plot posterior medians with quantile-based intervals rather than forcing symmetric intervals around posterior means. A summary for \(\mu\) belongs in a clearly distinguished row or panel. Because \(\tau\) is a standard deviation, it is nonnegative and measured in the same units as \(\theta_j\); it is best reported separately, with a posterior interval, rather than placed among the signed subgroup effects as though it were another treatment effect.

1
Fix the estimand and scale.
State what an effect represents, its units, and which direction favors treatment. Choose the no-effect reference and, where relevant, a clinically important threshold.
2
Summarize marginal posteriors.
For every \(\theta_j\) and for \(\mu\), calculate the same type of posterior center and credible interval from the fitted model’s posterior draws.
3
Show between-basket variation distinctly.
Report a posterior summary and interval for \(\tau\), with its units. Do not substitute the interval for \(\mu\) or the range of subgroup point estimates for this quantity.
4
Check labels and scale.
Verify the axis, basket names, interval meaning, reference lines, and direction of benefit. If effects were transformed, make clear which summaries were transformed.

Worked Example: Reading a Forest Plot on a Continuous Scale

Consider a hypothetical basket trial with a continuous symptom-improvement outcome. Positive treatment effects favor treatment and are measured in score points. The fitted hierarchical model gives the following hypothetical marginal posterior summaries. For illustration, suppose each posterior is approximately normal, so a central 95% interval is calculated as the posterior mean plus or minus \(1.96\) posterior standard deviations.

For Basket A, the posterior mean is \(0.558824\) points and the posterior variance is \(0.0661765\) points squared. Its posterior standard deviation is \(\sqrt{0.0661765}=0.257248\) points. Thus its interval is

$$ 0.558824 \pm 1.96(0.257247) = 0.558824 \pm 0.50420 \approx (0.05462,\ 1.063) $$

For Basket B, suppose the posterior mean is \(0.200\) points and the standard deviation is \(0.120\) points. Its interval is \(0.200\pm1.96(0.120)=0.200\pm0.2352\), or approximately \((-0.0352,\ 0.435)\) points.

For Basket C, suppose the posterior mean is \(79/130=0.607692\) points and its posterior variance is \(9/325=0.0276923\) points squared. The standard deviation is \(\sqrt{9/325}=0.166410\) points, giving

$$ 0.607692 \pm 1.96(0.166410) \approx (0.2815,\ 0.9339) \approx (0.282,\ 0.934) $$

Suppose the posterior mean of \(\mu\) is \(0.300\) points with posterior standard deviation \(0.150\) points. Its approximate 95% interval is \(0.300\pm1.96(0.150)=(0.006,\ 0.594)\) points. The posterior median of \(\tau\) is \(0.220\) points, with a hypothetical 95% credible interval from \(0.080\) to \(0.510\) points. In the plot, give the three baskets their own rows and intervals, place \(\mu\) in a clearly identified population-mean row, and report \(\tau\) in a separate annotation or panel.

The zero line shows no effect on this scale. Basket B’s interval includes zero; A’s and C’s intervals do not under the stated approximate summaries. That visual fact describes these intervals, not the probability that a null hypothesis is true. Nor does the location of \(\mu\) imply that every basket has an effect equal to \(0.300\) points.

Why Shrinkage and Uncertainty Need Careful Display

The hierarchical model links baskets through their shared distribution. In a simple normal example with known \(\mu\) and \(\tau\), let an observed basket estimate satisfy \(y_j\mid\theta_j\sim N(\theta_j,s_j^2)\), and let \(\theta_j\mid\mu,\tau\sim N(\mu,\tau^2)\). Conditional on those fixed hierarchy parameters, the posterior variance and mean are

$$ v_j=\left(\frac{1}{s_j^2}+\frac{1}{\tau^2}\right)^{-1}, \qquad m_j=v_j\left(\frac{y_j}{s_j^2}+\frac{\mu}{\tau^2}\right). $$

This follows by multiplying the normal likelihood and normal prior: the terms involving \(\theta_j\) in the exponent have total precision \(1/s_j^2+1/\tau^2\), and the precision-weighted data and prior centers sum to \(y_j/s_j^2+\mu/\tau^2\). Completing the square gives a normal distribution with variance \(v_j\) and mean \(m_j\). The formula shows why a conditional estimate is pulled toward \(\mu\), with the relative precision of the data and prior determining the amount.

In a fitted hierarchical model, however, \(\mu\) and \(\tau\) are generally uncertain. A plotted marginal posterior for \(\theta_j\) averages over that uncertainty. Its interval can therefore differ from the conditional normal interval calculated with fixed \(\mu\) and \(\tau\). Presenting conditional intervals as if they were the full posterior intervals can understate uncertainty.

Worked Example: Conditional Normal Update and Its Plotting Implication

Suppose a hypothetical basket has observed estimate \(y_j=0.400\) points with standard error \(s_j=0.300\) points. For this calculation only, condition on a population mean \(\mu=1.000\) points and between-basket standard deviation \(\tau=0.500\) points. The conditional posterior variance is

$$ v_j=\left(\frac{1}{0.300^2}+\frac{1}{0.500^2}\right)^{-1} =\left(11.1111+4\right)^{-1} =\frac{9}{136} =0.0661765 $$

The conditional posterior mean is

$$ m_j=0.0661765\left(\frac{0.400}{0.300^2}+\frac{1.000}{0.500^2}\right) =0.0661765(4.4444+4) =0.558824\text{ points}. $$

The conditional standard deviation is \(\sqrt{9/136}=0.257248\) points, so the approximate 95% conditional interval is \(0.558824\pm1.96(0.257247)\), or \(0.05462\) to \(1.063\) points. These calculations are valid conditional on the stated \(\mu\) and \(\tau\). If those parameters were estimated rather than known, this interval alone would not include their posterior uncertainty; the forest plot for the fitted model should instead use marginal posterior draws of \(\theta_j\).

Changing Scales and Comparing Displays

A forest plot may use an additive scale, such as a mean difference, or a ratio scale, such as an odds ratio. The reference line must match the scale: zero for an additive effect and one for a ratio. If a model is fit on the log-odds-ratio scale, plot either the log effects with zero as the reference or transform posterior draws to the odds-ratio scale and use one as the reference. Do not exponentiate the endpoints and then treat the resulting interval as symmetric.

Worked Example: Transforming a Log Odds Ratio

Suppose a hypothetical basket’s posterior median log odds ratio is \(-0.200\), with a central 95% credible interval from \(-0.800\) to \(0.400\). Exponentiating gives an odds-ratio median of \(\exp(-0.200)=0.819\), and interval endpoints \(\exp(-0.800)=0.449\) and \(\exp(0.400)=1.492\). Thus the interval is approximately \(0.449\) to \(1.492\), with one as the no-effect reference. Because this interval crosses one, it includes odds ratios on both sides of no effect. The odds ratio is not a risk ratio, and its interpretation depends on the outcome and comparison being modeled.

If \(\tau=0.300\) on the log odds-ratio scale, it remains a standard deviation measured in log odds-ratio units. Its exponent, \(\exp(0.300)=1.350\), can be described as a multiplicative factor corresponding to one standard deviation on that scale; it is not itself a between-basket standard deviation in odds-ratio units.

A table is a useful alternative when readers need exact values, basket labels, or several decimal places, but it makes relative interval widths and the location of a common reference harder to scan. A forest plot is often more effective for visual comparison, while a table can accompany it for precise reporting. Raw, unpooled estimates can also be shown for context, but they answer a different visual question from partially pooled posterior estimates and may be much less stable in sparse baskets. State clearly which marks are raw and which come from the hierarchical model.

Sorting rows by posterior estimate can make the display easier to scan, but the order is uncertain and should not be mistaken for evidence that adjacent baskets differ. Keeping a clinically meaningful, prespecified order may better support interpretation. Either choice should be disclosed, and the basket labels must remain identifiable.

Diagnostics, Failure Modes, and Limitations

A forest plot is a communication tool, not a diagnostic for every aspect of model fit. Inspect the fitted model’s diagnostics separately, including whether posterior computation has converged and whether the posterior draws adequately represent the target distributions. In the plot itself, look for presentation problems: intervals cut off by the axis, inconsistent scales, unclear direction of benefit, or an apparent shared center that is actually created by a truncated axis. If an interval extends beyond the plotted range, indicate that explicitly rather than silently clipping it.

  • Do not use interval overlap as a test of difference. Two credible intervals can overlap even when the posterior probability of a contrast being positive is high, or fail to overlap without directly expressing the posterior probability of a particular contrast. A plot of marginal intervals is not a substitute for analyzing the contrast of interest.
  • Do not equate a narrow interval for \(\mu\) with small \(\tau\). The population mean can be estimated precisely while basket effects remain quite variable. Read the posterior summary for \(\tau\) separately.
  • Do not treat a point estimate as the whole posterior. The center and interval together communicate location and uncertainty. A ranking by centers alone can hide substantial uncertainty.
  • Do not use a shared axis without checking its range. An axis that is too narrow can exaggerate differences; one that is unnecessarily wide can make relevant uncertainty unreadable. Include the reference value and all intervals or mark any truncation.

The plot’s conclusions are limited by the model, prior, chosen effect measure, and available data. In particular, the model’s distributional assumptions and the amount of information in sparse baskets affect the posterior summaries being plotted. The visual display does not establish that the hierarchy is appropriate, that every basket is exchangeable, or that a clinical decision follows from any particular interval. It should be read alongside the model description and the substantive clinical thresholds.

Key takeaway: A hierarchical basket forest plot should distinguish basket-specific marginal posterior summaries from the population-level mean and from between-basket variation. Label the effect scale and reference values, show uncertainty transparently, and avoid treating visual overlap or rank order as a formal comparison.

Check Your Understanding

Answer each question, then compare your reasoning with the solutions.

  1. A basket’s mean-difference interval is \((-0.10,0.40)\) score points. What does its relation to the zero line indicate, and what does it not establish?
  2. Why should a forest plot from a fitted hierarchical model generally use marginal posterior intervals rather than intervals conditional on a single estimate of \(\mu\) and \(\tau\)?
  3. On the log odds-ratio scale, a posterior interval is \((-0.30,0.20)\). What is the transformed interval, approximately, and what is the no-effect value on that scale?
  4. A plot shows a narrow interval for \(\mu\) and a broad posterior distribution for \(\tau\). Can the population mean be estimated precisely while basket effects still vary substantially?

Solutions. (1) The interval includes zero, so the displayed 95% credible interval includes both negative and positive mean differences. It does not give the probability that a null hypothesis is true or directly test a contrast between this basket and another. (2) Marginal intervals integrate over posterior uncertainty in \(\mu\) and \(\tau\); conditioning on single values omits that component of uncertainty and can make intervals too narrow. (3) Exponentiating the endpoints gives \((\exp(-0.30),\exp(0.20))\approx(0.741,1.221)\); the no-effect odds ratio is one. (4) Yes. The posterior for the center \(\mu\) can be concentrated even when the between-basket standard deviation \(\tau\) is appreciable; the two summaries describe distinct features of the hierarchy.

Clinical Biostats