Why Inspect Overlap by Covariate Profile?
In an observational study, people with different exposure statuses may also differ in characteristics related to the outcome. An adjusted comparison is most credible when exposed and unexposed people can be compared at similar covariate values. Looking only at the overall number of people in each exposure group does not show whether such comparisons are available throughout the covariate space.
For example, a data set might contain many exposed and unexposed people overall, yet nearly all people with severe baseline illness may be exposed. A comparison for people with severe illness would then have little direct support from the data. This tutorial focuses on diagnosing that kind of gap with summaries and plots. A diagnostic can reveal where support is weak; it cannot, by itself, establish that all assumptions needed for a causal conclusion hold.
A probability near 0 or 1 signals that one group is uncommon at that profile, even if the probability is not exactly 0 or 1. Such a comparison may be unstable because it depends on only a few observations from the less common group. For continuous covariates, exact repeated profiles are unusual, so the practical question is whether the two groups have observations in comparable local regions—not whether every exact combination occurs repeatedly.
The earlier material on positivity and covariate overlap introduced the identification requirement: for the profiles relevant to the target population, both exposure levels must be possible. In observational analyses, this condition is considered alongside consistency and conditional exchangeability. Plots and summaries can reveal empirical problems with support, but they cannot prove population positivity or establish conditional exchangeability.
Summaries for Discrete Covariate Profiles
For a discrete profile, count the exposed and unexposed observations separately. If a profile contains \(n_1(x)\) exposed and \(n_0(x)\) unexposed observations, its observed exposure fraction is \(\hat e(x)=n_1(x)/(n_1(x)+n_0(x))\). This is a sample summary, not proof of the true population probability \(e(x)\). Always report the counts along with the fraction: a fraction based on a small number of people is imprecise.
Worked Example: Exposure Fractions Across Severity Profiles
Suppose a hypothetical observational data set contains 260 adults. Baseline severity is recorded in three categories, and exposure status is recorded for everyone. Calculate the observed exposure fraction within each severity category.
| Baseline severity | Exposed | Unexposed | Total |
|---|---|---|---|
| Low | 80 | 20 | 100 |
| Moderate | 50 | 50 | 100 |
| High | 10 | 50 | 60 |
| Total | 140 | 120 | 260 |
For low severity, \(\hat e(\text{low})=80/(80+20)=80/100=0.800\). For moderate severity, \(\hat e(\text{moderate})=50/(50+50)=50/100=0.500\). For high severity, \(\hat e(\text{high})=10/(10+50)=10/60=0.167\), to three significant figures.
Both groups occur in every category, so none of these observed categories is completely separated by exposure. However, the high-severity group has only 10 exposed adults, compared with 50 unexposed adults. A comparison there has weaker empirical support than a comparison in the moderate-severity category, where the counts are equal. The fraction of 0.167 is not itself a universal cutoff for acceptable overlap; its importance depends partly on the sample size, target population, and analysis.
The totals are internally consistent: the category totals sum to \(100+100+60=260\), and the exposure totals sum to \(140+120=260\). Checking both directions is a simple way to catch errors before interpreting a table.
For several categorical covariates, make a table or plot for their joint profiles when the sample size permits. A separate table for each covariate shows only marginal overlap; it does not show whether both groups occur together at combinations of covariate values. When there are many possible combinations, some cells will be small or empty. Combine categories only when doing so makes scientific sense, and explain the resulting loss of detail rather than treating empty cells as evidence that the underlying groups are interchangeable.
Why Marginal Overlap Can Be Misleading
Two exposure groups can have similar distributions for each covariate considered separately and still occupy different combinations of those covariates. Since adjusted comparisons concern people with the same or similar covariate profiles, joint distributions matter. The following table gives a deliberately clear example.
Worked Example: Similar Margins, No Joint Profile Overlap
In a hypothetical sample of 160 adults, age is grouped as younger or older, and baseline severity as low or high. The table shows counts for each joint profile and exposure group. Find the marginal exposure counts by age and by severity, then check whether any joint profile contains both exposure groups.
| Age | Severity | Exposed | Unexposed |
|---|---|---|---|
| Younger | Low | 40 | 0 |
| Younger | High | 0 | 40 |
| Older | Low | 0 | 40 |
| Older | High | 40 | 0 |
Among younger adults, the exposed count is \(40+0=40\), and the unexposed count is \(0+40=40\). Among older adults, the counts are also \(0+40=40\) exposed and \(40+0=40\) unexposed. Thus each age category has equal marginal counts in the two groups. The same calculation for severity gives 40 exposed and 40 unexposed at low severity, and 40 exposed and 40 unexposed at high severity.
Now inspect the joint profiles. Younger adults with low severity include 40 exposed and no unexposed adults. Younger adults with high severity include no exposed and 40 unexposed adults. The older low-severity profile has no exposed adults, and the older high-severity profile has no unexposed adults. No joint profile contains both groups. Thus the marginal summaries suggest similarity, while the joint table shows complete separation.
An adjusted comparison that requires comparing exposed and unexposed adults with the same age and severity profile would lack direct data support in every cell. A model might still produce predictions for those comparisons, but those predictions would rely on assumptions about how outcomes relate to the covariates, rather than on observed within-profile comparisons.
Plots for Continuous Covariates
For continuous covariates such as age, baseline score, or laboratory measurement, useful displays include overlaid histograms, density plots, side-by-side boxplots, and plots of individual observations such as strip plots. Each view answers a slightly different question. Histograms and density plots show the overall shape; boxplots provide a compact view of location and spread; individual points can reveal gaps, clusters, and a few observations at the extremes.
Compare the groups on the same axes and use the same scales. Look for the portions of the covariate range where both groups have observations, not just for similar averages. A common range of values is evidence of empirical support in that range, but a wide range alone does not guarantee that the groups are well represented throughout it. If there are several covariates, inspect joint patterns where possible: two separate plots can hide a gap in their combinations.
Worked Example: Finding the Common Age Range
In a hypothetical sample, the ages in years for five exposed adults are 30, 35, 40, 45, and 50. The ages for five unexposed adults are 45, 50, 55, 60, and 65. Compare the observed ranges and identify where an age-specific comparison has direct support.
The exposed range is from 30 to 50 years, and the unexposed range is from 45 to 65 years. The intersection of these ranges is from 45 to 50 years. The exposed mean age is \((30+35+40+45+50)/5=200/5=40\) years. The unexposed mean age is \((45+50+55+60+65)/5=275/5=55\) years.
The means differ by \(55-40=15\) years, but that difference alone does not describe overlap. The observations at 45 and 50 years are shared by both groups, so comparisons in that part of the observed range have direct age support. In contrast, there are exposed observations below 45 years but no unexposed observations there; a comparison for an exposed 35-year-old with an unexposed adult of the same age would require a prediction beyond the observed unexposed ages. The reverse problem occurs above 50 years.
The example uses only five observations in each group, so it illustrates the logic rather than establishing a reliable population boundary. With real data, examine the individual observations and distributional plots, and consider whether apparent gaps persist in relevant local regions.
From a Support Gap to Extrapolation
A conditional exposure contrast at profile \(x\) compares outcome information for exposed and unexposed people with that profile. If the sample contains no observations from one group there, the observed data do not directly supply that group’s outcome at \(x\). An adjusted model may nevertheless return a value, because its mathematical form can extend across covariate values. That extension is extrapolation: a prediction in a region where the data provide little or no direct support.
The logic can be stated simply. Suppose there are no unexposed observations at profile \(x\), so \(n_0(x)=0\). Then no observed unexposed outcome at \(x\) is available for a within-profile comparison. Any model-based value for that outcome must come from structure assumed across other profiles. This does not automatically make the estimate unusable, but it makes the conclusion more dependent on the model and less directly supported by the observed data.
Even when both groups occur at a profile, very unequal counts can make the comparison sensitive to a small number of observations. For example, the severity table above has only 10 exposed adults in the high-severity category. A plot or table should therefore show group counts or sample sizes as well as shapes and proportions. Smooth curves alone can make sparse regions look more informative than they are.
Overlap diagnostics are relevant to the target population. A data set may have good support for common profiles but poor support for an unusual subgroup. If the intended conclusion concerns the whole population, or a specific subgroup, assess support for that population rather than relying on an overall summary. Restricting a target population to improve support changes the population to which the conclusion applies; it is not merely a plotting adjustment.
A Practical Diagnostic Sequence
List the baseline covariates relevant to the planned comparison and consider their joint combinations, not only one-variable summaries.
For discrete profiles, show exposed and unexposed counts and calculate observed exposure fractions. For continuous covariates, show group distributions on common axes and include sample sizes.
Identify profiles with no observations from one group, regions with little common support, and regions where one group is represented by very few observations.
State which comparisons are directly supported and which would rely on extrapolation. Do not claim that an observed plot proves population positivity or removes confounding.
Common Mistakes
- Checking only overall group sizes. Large exposure groups do not guarantee overlap in the profiles needed for adjustment. Compare distributions within relevant covariate combinations.
- Checking only one covariate at a time. Similar marginal age and severity distributions can conceal complete separation by the age-by-severity combination, as the table above demonstrates.
- Treating a small observed fraction as proof of a structural zero. A sample fraction near 0 or 1 can reflect limited sample size. It raises a support concern but does not, on its own, determine the population probability.
- Assuming overlap proves a causal interpretation. Both groups appearing across covariate profiles does not establish that all confounders were measured or that conditional exchangeability holds.
- Calling a model prediction direct evidence. A model can return a prediction where one exposure group has no observations. That result relies on modeling assumptions and should be described as extrapolation, not as an observed within-profile comparison.
Check Your Understanding
Use the definitions and examples above to answer these questions.
- In a discrete profile, 12 people are exposed and 48 are unexposed. Calculate the observed exposure fraction and describe what the counts add to the interpretation.
- Why can similar exposure-group distributions for age and severity separately fail to show joint covariate overlap?
- For a continuous covariate, what does a shared observed range show, and what does it not prove?
- If a model supplies an unexposed outcome prediction for a profile with no observed unexposed people, why is that prediction described as extrapolation?
- Name one important causal assumption that overlap plots cannot establish.