Tutorials › Multiple Imputation by Chained Equations (MICE) › Avoiding Double Counting in Delta Adjustments

Sensitivity of Conclusions to Imputation Assumptions · Tutorial 457 of 497

Avoiding Double Counting in Delta Adjustments

Trace where a delta enters the imputation process so each missing value receives the intended sensitivity shift exactly once.

Advanced 10 min read

What You'll Learn

  • Define a delta-adjusted conditional distribution and distinguish it from an unadjusted draw.
  • Recognize duplicate shifts in model-based and post-processing implementations.
  • Calculate the effect of applying a delta once or twice on continuous and binary scales.
  • Audit chained-equation updates to prevent shifts from accumulating across iterations.
  • Compare model-based adjustment with post-processing and identify limitations of each.

Why One Intended Shift Can Become Two

A delta scenario represents a specified departure from the baseline imputation model for values that are missing. The implementation may build that departure into a conditional model, or it may first generate a baseline draw and then adjust that draw. Both approaches can represent the same scenario. The danger is combining them without noticing: if the conditional model already generates delta-adjusted values and a later processing step applies the same delta again, the completed data reflect twice the intended shift.

This is a workflow error, not a new sensitivity assumption. It can move estimates, confidence intervals, and tipping-point results enough to change a substantive conclusion. The essential audit question is therefore concrete: at what exact step does the delta enter the distribution of each missing value?

Definition: Let \(Y\) be an incomplete variable and \(X\) its predictors. A baseline imputation draw for a missing \(Y\) is generated from a conditional distribution \(f_0(y\mid X)\). A delta-adjusted draw is generated from a specified alternative distribution \(f_\delta(y\mid X)\). A delta is applied twice when a draw already generated from \(f_\delta\) is transformed again by the operation intended to create \(f_\delta\) from \(f_0\). The precise meaning of a shift depends on the outcome scale and model.

The adjustment is generally intended for missing values, not for observed values, which remain as recorded. In chained equations, the relevant conditional model is updated as part of a sequence of variable-specific models. Each model may have its own adjustment convention. The audit must follow the value through the entire process, including model prediction, random draw, any post-processing, and later updates in the chain.

Two Valid Locations for a Delta

For a continuous outcome with an additive shift in its measurement units, one may draw from a baseline conditional model and add \(\delta\) to each missing-value draw. Alternatively, one may incorporate \(\delta\) into the conditional location before drawing. For a location model with baseline mean \(m_0(X)\) and residual \(\varepsilon\), these two correct implementations are:

$$ Y_{\mathrm{mis}}=m_0(X)+\varepsilon+\delta \qquad\text{or}\qquad Y_{\mathrm{mis}}=m_\delta(X)+\varepsilon,\quad m_\delta(X)=m_0(X)+\delta. $$

They are equivalent when they use the same residual distribution and the same delta on the same scale. They are not two steps to perform in succession. For a binary response under logistic regression, a delta may instead shift the log odds. Then the adjusted probability is obtained from the shifted linear predictor, and a Bernoulli value is drawn using that probability. Adding a numeric delta to a completed 0/1 response is not the corresponding adjustment.

Key check: Write down the baseline draw and the intended adjusted distribution before examining the implementation. If the model’s predictive distribution already equals the intended \(f_\delta\), do not apply an additional transformation that was designed to move a baseline draw from \(f_0\) to \(f_\delta\).

Why Duplicate Shifts Add Up

The arithmetic makes the continuous-outcome error especially clear. Suppose a baseline draw can be written as \(Y_0=m_0(X)+\varepsilon\). A single additive adjustment produces \(Y_1=Y_0+\delta\). If a model has already shifted its location by \(\delta\), its draw is \(Y_1=m_0(X)+\delta+\varepsilon\). Post-processing that draw by adding \(\delta\) again gives:

$$ Y_2=\bigl(m_0(X)+\delta+\varepsilon\bigr)+\delta =m_0(X)+\varepsilon+2\delta. $$

Thus, under this additive setup, the duplicate operation is not a minor computational detail: it changes the scenario from \(\delta\) to \(2\delta\). This conclusion assumes both adjustments use the same sign, units, and scale. It should not be carried over mechanically to nonlinear transformations or to parameters whose meaning changes with the model link.

For a logistic conditional model, let \(\eta_0(X)\) be the baseline logit. If the intended delta is a log-odds shift, one adjustment gives \(p_\delta(X)=\operatorname{logit}^{-1}\{\eta_0(X)+\delta\}\). Applying the same shift again yields \(\operatorname{logit}^{-1}\{\eta_0(X)+2\delta\}\). The same doubling applies to the logit, not to the probability or the binary draw itself.

Worked Example: Duplicate Shift in a Continuous Conditional Model

Hypothetical data. For a person with observed predictors \(X\), suppose a baseline conditional model has predicted mean \(10\) points, and a simulated residual for this imputation is \(2\) points. The scenario calls for \(\delta=-3\) points for missing outcomes.

The baseline draw is \(10+2=12\) points. Applying the delta once gives \(12+(-3)=9\) points. Equivalently, the model can use adjusted mean \(10-3=7\), then add the same residual: \(7+2=9\) points.

If the model already used the adjusted mean of \(7\), its draw is \(7+2=9\). A subsequent post-processing step that subtracts \(3\) more points produces \(9-3=6\) points. Relative to the baseline draw, this is a total shift of \(6\) points, or \(2\delta\), rather than the intended \(3\)-point downward shift.

The model’s predicted mean and the post-processing operation must therefore be inspected together. Seeing a final value below the baseline is not enough to establish that the scenario was implemented correctly; here both 9 and 6 are below 12, but only 9 reflects the specified delta.

Worked Example: Duplicate Shift on the Log-Odds Scale

Hypothetical data. Suppose a baseline logistic model gives a missing patient’s response probability \(p_0=0.20\). The intended sensitivity shift is \(\delta=\log(2)\), so the odds for the missing response are to be multiplied by 2 relative to baseline.

The baseline odds are \(0.20/(1-0.20)=0.25\). After one shift, the odds are \(0.25\times2=0.50\), giving adjusted probability \(0.50/(1+0.50)=0.3333\). A Bernoulli draw from this adjusted probability is either 0 or 1; it is not a fractional outcome of 0.3333.

If the model already adds \(\log(2)\) to the baseline logit, those odds are already \(0.50\). A second application multiplies them by 2 again: \(0.50\times2=1.00\). The resulting probability is \(1.00/(1+1.00)=0.5000\). This is a total odds multiplier of 4, corresponding to a log-odds shift of \(2\log(2)=\log(4)\), not the intended multiplier of 2.

This example also shows why a binary delta must be interpreted on its declared scale. The probability changed from 0.20 to 0.3333 after one adjustment, not by adding \(\log(2)\) to 0.20. The duplicate shift is identified on the linear predictor or odds scale before the Bernoulli draw.

Audit the Whole Chained-Equation Update

In a chained-equation workflow, a variable’s conditional model can be run repeatedly as other variables are updated. A common implementation risk is mutating an already adjusted value: the next update adds the delta to that value again, rather than generating a fresh conditional draw and applying the adjustment once. Another risk is that one software component uses a shifted model while an external script also post-processes the completed data. The following audit makes the point of adjustment explicit.

1
Specify the scenario.
State which variable and missing values are adjusted, the direction of the departure, and the scale and units of \(\delta\).
2
Identify the baseline conditional draw.
Document the model, its predictors, and the distribution from which a missing value would be drawn without the sensitivity adjustment.
3
Find every delta operation.
Check model formulas, offsets, modified prediction functions, draw-generation code, and post-processing scripts. Record whether each operation affects a location, a link-scale predictor, or a completed draw.
4
Retain exactly one adjustment route.
Either generate draws from the delta-adjusted conditional distribution, or generate baseline draws and transform them once. Do not combine both routes for the same missing value.
5
Verify a small trace.
For a few missing records, save the baseline prediction or draw, the adjusted prediction or draw, and the final completed value. Check that the observed change matches the stated delta on its defined scale.

Worked Example: Preventing Accumulation Across Chain Updates

Hypothetical data. A chained-equation routine updates a continuous variable \(Y\) in two iterations for one record whose \(Y\) is missing. Each update’s baseline model gives mean \(5\) units, and the scenario specifies \(\delta=2\) units. For illustration, suppose the residual draw is zero in both iterations.

A correct implementation draws afresh from the adjusted conditional model at each update. In iteration 1, the adjusted mean is \(5+2=7\), so the draw is \(7\). In iteration 2, the model again makes a fresh conditional draw with adjusted mean \(7\), so the new draw is also \(7\). The delta has been used once in each draw; the two iterations do not imply a cumulative shift to \(5+2+2=9\).

An incorrect in-place procedure might take the current value \(7\) and add \(2\) whenever the variable is updated. It then changes the value to \(9\) in iteration 2, even though the conditional model’s intended draw remains centered at \(7\). With additional iterations, this error could continue to drift. The correction is to generate each update from its conditional model, with the scenario incorporated once, rather than repeatedly adding \(\delta\) to the current adjusted value.

In real chained equations, predictors and model parameters may change between iterations, so successive draws need not equal 7. The diagnostic is not that every draw remains numerically fixed; it is that there is no extra deterministic \(\delta\) added merely because another update occurred.

Diagnostics, Alternatives, and Limitations

A useful diagnostic is a small, record-level trace for each adjusted variable. Preserve the baseline-scale prediction, the draw produced by the model, and the final value after any transformation. For continuous outcomes with a constant location shift, the adjusted and baseline draws should differ by the intended \(\delta\), holding the simulated residual fixed. For a binary logistic model, compare logits or odds rather than subtracting 0/1 outcomes. Also check that observed values are unchanged and that adjustment is restricted to the intended missing values.

Compare the two implementation strategies before choosing one. A model-based shift makes the conditional distribution explicit and can be natural when the adjustment belongs in the model’s linear predictor. Post-processing a baseline draw can make the adjustment easy to inspect and separate from model fitting. Either can be correct if it represents the same specified distribution and is applied once. Post-processing requires particular care when the outcome has bounds, categories, or a nonlinear transformation: a simple additive shift may create impossible values or fail to represent the intended shift on the analysis scale.

A model can also include an offset or modified intercept that is hard to recognize by inspecting only the final prediction. Conversely, a post-processing function may be called more than once, or may operate on a variable that was already adjusted within its conditional model. Diagnostics can reveal inconsistencies in the implementation, but they do not establish that the chosen delta is substantively plausible. The sensitivity assumption still needs a clear interpretation on the relevant scale.

Do not infer that a doubled delta always results in a doubled change to the analysis estimate. That simple relationship applies to the adjusted conditional location in the additive example, not generally to nonlinear estimands, binary probabilities, or chained systems in which adjusted values affect other conditional models. Recompute the estimand using the completed data for the scenario that was actually implemented, and verify that the scenario label matches the adjustment in the code.

Common mistake: “The imputation code shifts the conditional mean by \(\delta\), and the post-processing code shifts every missing value by \(\delta\), so the data reflect the intended delta.” This reasoning counts the same departure twice. If the conditional model already generates the intended adjusted distribution, remove the extra post-processing shift; if post-processing is the chosen route, generate baseline draws and shift them once.

Check Your Understanding

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

  1. A baseline continuous draw is 14 units and the intended delta is \(+2\). The model includes this shift before drawing, and a later script adds 2 again. What is the final value, and what value would reflect one intended adjustment?
  2. A binary logistic imputation has baseline odds 0.40. The specified delta is \(\log(3)\). What are the odds and probability after one adjustment? What probability results if the same shift is applied twice?
  3. Why is it generally wrong to add a log-odds delta directly to an imputed binary value of 0 or 1?
  4. During each chained-equation iteration, should an additive delta be added to the current adjusted value, or should a fresh conditional draw be generated with the adjustment applied once? Explain.

Solutions. (1) The final value is \(14+2+2=18\) units; one adjustment gives \(14+2=16\) units. (2) After one shift, the odds are \(0.40\times3=1.20\), so the probability is \(1.20/(1+1.20)=0.5455\). After two shifts, the odds are \(0.40\times3^2=3.60\), so the probability is \(3.60/(1+3.60)=0.7826\). (3) The delta is defined on the log-odds scale; it changes the model’s linear predictor, which determines a probability used to generate a 0/1 draw. Adding it to a binary draw does not implement that model. (4) Generate a fresh conditional draw with the adjustment applied once. Repeatedly adding the delta to the current value can accumulate shifts unrelated to the specified conditional distribution.

Clinical Biostats