Tutorials › Multiple Imputation by Chained Equations (MICE) › Choosing the Number of FCS Iterations

Fully Conditional Specification · Tutorial 137 of 497

Choosing the Number of FCS Iterations

Choose an FCS chain length by checking whether relevant summaries have stabilized and whether their Monte Carlo error is small enough for the analysis.

Intermediate 11 min read

What You'll Learn

  • Distinguish chain length from burn-in and from the number of imputations.
  • Use trace and running-summary behavior to assess whether a chain appears stable.
  • Calculate how autocorrelation affects effective sample size and Monte Carlo error.
  • Set a precision target and estimate the post-burn-in length needed to meet it.
  • Recognize why no single iteration count is suitable for every FCS analysis.

Why Chain Length Is a Precision Choice

In fully conditional specification (FCS), an iteration consists of updating the variables with missing values in turn, using their specified conditional models. Repeating those updates produces a sequence of completed data sets. The question here is how long to continue that sequence. There is no universal iteration count: the required length depends on how quickly the chain settles into stable behavior, how strongly successive iterations are correlated, and how precisely the quantities of interest need to be estimated from the run.

Chain length is distinct from burn-in. Burn-in is the initial part of a run that is set aside to reduce the influence of initialization; the retained length is the number of iterations left for assessing and summarizing the chain. It is also distinct from the number of imputations requested for an analysis. Increasing chain length may improve the precision of summaries from a chain, but it does not by itself establish that the conditional models are appropriate or that the FCS conditionals define a compatible joint distribution.

Definition: The chain length is the number of FCS iterations run. If \(B\) iterations are discarded as burn-in from a run of \(T\) iterations, the retained chain length is \(N=T-B\). For a scalar summary \(g_t\) calculated at retained iteration \(t\), its Monte Carlo error (MCSE) describes the simulation uncertainty in estimating a chain-level quantity, such as the mean of \(g_t\), from a finite, autocorrelated run.

Useful summaries \(g_t\) may include the mean of an imputed variable, a proportion in a category, or a parameter estimate from an imputation model. Choose summaries that matter to the analysis; a chain can look adequate for one quantity yet be imprecise for another. The purpose is not to find an iteration count that is always sufficient, but to run long enough that the relevant summaries appear stable and have acceptable Monte Carlo error.

Autocorrelation and Monte Carlo Error

For a retained sequence \(g_1,\ldots,g_N\), let \(s_g\) be its sample standard deviation and let \(\rho_k\) denote its lag-\(k\) autocorrelation. If the chain is stationary over the retained segment and its autocorrelations decay sufficiently quickly, the variance of the chain mean is approximately

$$ \operatorname{Var}(\bar{g}) \approx \frac{\operatorname{Var}(g_t)}{N}\left(1+2\sum_{k=1}^{\infty}\rho_k\right). $$

The factor in parentheses accounts for dependence between iterations. This motivates the effective sample size, or ESS: the number of independent draws that would give approximately the same variance as the correlated sequence. With an estimated ESS, a common approximation to the MCSE of the chain mean is

$$ \widehat{\operatorname{MCSE}}(\bar{g}) \approx \frac{s_g}{\sqrt{\operatorname{ESS}}}. $$

These are estimates, not guarantees. In particular, the approximation relies on the retained chain behaving approximately stationarily and on the autocorrelation estimate being informative. Highly persistent dependence reduces ESS; consequently, adding iterations does not improve precision as quickly as it would for independent draws.

Key takeaway: Choose a chain length by examining the behavior and MCSE of relevant summaries, not by treating a fixed number of iterations as sufficient in every analysis. The MCSE is simulation error, not the sampling standard error of the scientific estimate.

A Practical Length-Selection Approach

A useful approach is to start with a pilot run, set aside the burn-in judged appropriate for that run, and examine the retained summaries. A trace plot should show values fluctuating around a reasonably stable range rather than a sustained change in level. Running means and MCSE estimates provide complementary information: apparent stability alone does not show that a mean has been estimated precisely, while a small reported MCSE is not reassuring if the retained segment still exhibits a clear transient.

1
Choose summaries and tolerances.
Identify the imputed-data or model summaries that matter, and specify a meaningful MCSE target for each. The target may be an absolute amount in the summary's units or a stated fraction of an inferential standard error.
2
Run and inspect a pilot chain.
After accounting for burn-in, inspect traces and running summaries for the quantities selected. If retained behavior is not plausibly stable, do not treat an MCSE calculation as proof that the run is adequate.
3
Estimate precision.
For each relevant summary, estimate its standard deviation and ESS, then calculate MCSE. Check the summary with the largest MCSE relative to its own target.
4
Extend and reassess.
If a target is missed, extend the run and recalculate the diagnostics. A length projection based on pilot autocorrelation is approximate; verify it on the longer retained run rather than assuming the pilot's dependence pattern will persist exactly.

This approach uses numerical precision and visual behavior together. Neither is a substitute for the other. Trace plots can reveal instability that a single scalar MCSE conceals, while MCSE calculations make the precision goal explicit rather than relying on a visual judgment alone.

Worked Example: Meeting an Absolute MCSE Target

Suppose a hypothetical FCS run has a post-burn-in segment of \(N=1{,}000\) iterations for the mean of an imputed laboratory measurement, in milligrams per litre. The trace fluctuates around a stable level, and the estimated ESS is 250. The standard deviation of the retained summary is \(s_g=0.40\) mg/L. The analyst has set an MCSE target of 0.030 mg/L.

The estimated MCSE is

$$ \widehat{\operatorname{MCSE}}(\bar{g}) \approx \frac{s_g}{\sqrt{\operatorname{ESS}}} = \frac{0.40\ \text{mg/L}}{\sqrt{250}} = \frac{0.40}{15.81}\ \text{mg/L} \approx 0.0253\ \text{mg/L}. $$

Since \(0.0253\) mg/L is below the prespecified target of \(0.030\) mg/L, this run meets the chosen MCSE criterion for this summary. The conclusion is conditional on the retained chain being sufficiently stable for the MCSE estimate to be meaningful. It does not establish that every other summary has met its target.

For comparison, if the same autocorrelation pattern held for only 500 retained iterations, the ESS would be about 125. The estimated MCSE would then be \(0.40/\sqrt{125}=0.0358\) mg/L, which exceeds the target. This illustrates why the number of iterations alone does not reveal precision: the dependence between them matters.

Projecting a Longer Run

When a pilot chain has an MCSE above its target, a rough length projection can help plan an extension. If the chain's variability and autocorrelation pattern remain similar, ESS grows approximately in proportion to retained length, and MCSE decreases approximately as the inverse square root of ESS. This is a planning approximation, not a stopping guarantee.

Justification: If \(s_g\) and the autocorrelation factor remain approximately unchanged, then \(\operatorname{Var}(\bar{g})\) is approximately proportional to \(1/\operatorname{ESS}\). Therefore MCSE is proportional to \(1/\sqrt{\operatorname{ESS}}\). Reducing MCSE from \(e_1\) to a target \(e_2\) requires approximately \(\operatorname{ESS}_2=\operatorname{ESS}_1(e_1/e_2)^2\). If the ESS fraction stays roughly constant, retained chain length must grow by the same factor.

Worked Example: Projecting the Required Retained Length

In a hypothetical pilot run, a model coefficient is summarized in log-odds units over \(N_1=800\) retained iterations. Its estimated ESS is 160, and its standard deviation across iterations is \(s_g=0.30\) log-odds units. The target MCSE is 0.015 log-odds units.

The current MCSE estimate is

$$ e_1 \approx \frac{0.30}{\sqrt{160}} = \frac{0.30}{12.65} \approx 0.0237\ \text{log-odds units}. $$

The target ESS under the same variability is

$$ \operatorname{ESS}_2 \approx \left(\frac{0.30}{0.015}\right)^2 = 20^2 = 400. $$

The pilot ESS fraction is \(160/800=0.20\). If that fraction remains approximately constant, the required retained length is about \(400/0.20=2{,}000\) iterations. Equivalently, the MCSE reduction factor is \(0.0237/0.015=1.58\), whose square is about 2.50; multiplying 800 by 2.50 also gives 2,000. Thus the pilot suggests extending the chain by about 1,200 retained iterations, then checking the longer run's stability and MCSE rather than assuming the projection is exact.

Use the Most Demanding Relevant Summary

A chain length should not be selected using only the easiest summary to estimate. Different quantities can have different variability and autocorrelation, so their MCSEs may differ substantially. A practical criterion is to identify a precision target for each key summary and ensure that the relevant targets are met. This does not mean increasing length until every conceivable diagnostic looks ideal; it means tying the computational effort to quantities that matter for the analysis.

Worked Example: Two Summaries Need Different Lengths

A hypothetical retained chain contains \(N=1{,}000\) iterations. For the imputed-variable mean, the standard deviation is 0.20 mmol/L and ESS is 400. For a regression coefficient, the standard deviation is 0.50 log-odds units and ESS is 100. Suppose the analyst wants each MCSE to be at most 0.020 in its respective units.

For the imputed-variable mean,

$$ \widehat{\operatorname{MCSE}}_1 = \frac{0.20\ \text{mmol/L}}{\sqrt{400}} = \frac{0.20}{20} = 0.010\ \text{mmol/L}. $$

This is below its target of 0.020 mmol/L. For the coefficient,

$$ \widehat{\operatorname{MCSE}}_2 = \frac{0.50\ \text{log-odds units}}{\sqrt{100}} = \frac{0.50}{10} = 0.050\ \text{log-odds units}. $$

This exceeds its target of 0.020 log-odds units. To achieve that target at the same variability requires an ESS of \((0.50/0.020)^2=625\). The pilot's ESS fraction for the coefficient is \(100/1{,}000=0.10\), giving a rough required retained length of \(625/0.10=6{,}250\) iterations. The coefficient, not the imputed-variable mean, drives the length decision under these targets. This projection must be checked after extending the run.

What Chain Length Can and Cannot Establish

A fixed rule such as “always run 20 iterations” or “always run 100 iterations” ignores differences in conditional dependence, the summaries being monitored, and the desired precision. Such a count may be adequate in one analysis and inadequate in another. Conversely, a very long run is not automatically informative: if the retained behavior is unstable, or if the MCSE estimate is unreliable, length alone does not resolve the concern.

Autocorrelation is central because it determines how much information a nominal number of iterations provides. ESS and MCSE translate that dependence into a precision scale. Still, these diagnostics assess simulation behavior, not the correctness of imputation models. A stable chain with small MCSE can reflect a precisely estimated summary of a poorly specified or incompatible FCS system. Likewise, a small MCSE is not evidence that missingness assumptions are correct.

Choosing chain length also does not answer how many independent chains to run; that is a separate design question. Nor does it determine how many imputations are needed for the final analysis. Keep those decisions conceptually separate: chain length concerns the adequacy of the iterative simulation, while the number of imputations concerns the collection of completed data sets used downstream.

Common Pitfalls

  • Using a universal iteration count. A fixed count ignores the chain's autocorrelation and the required precision. Choose a count based on retained-chain behavior and MCSE targets.
  • Counting iterations as if they were independent. If successive draws are correlated, \(N\) iterations can represent far fewer than \(N\) independent draws. Use ESS in the MCSE calculation.
  • Calling a flat-looking trace proof of adequacy. Visual stability is useful but does not quantify the precision of a mean. Calculate MCSE for relevant summaries as well.
  • Treating low MCSE as proof that the model is correct. MCSE measures finite-run simulation error under the chain's behavior; it does not assess model compatibility or substantive assumptions.
  • Projecting from a pilot without reassessment. The ESS fraction and summary variability may change in a longer run. Recalculate after extension.

The main alternative to this diagnostic approach is a preset iteration count. Its simplicity is attractive, but it cannot adapt to slow or fast mixing and offers no direct statement about precision. Trace inspection alone is also incomplete: it helps assess stability but does not replace a numerical MCSE target. Combining trace behavior, ESS, and MCSE gives a more interpretable basis for selecting a chain length, while retaining the caveat that these are diagnostics rather than proofs of correctness.

Check Your Understanding

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

  1. A retained chain has \(N=900\), ESS \(=225\), and summary standard deviation \(s_g=0.60\) units. What is the approximate MCSE?
  2. A pilot MCSE is 0.040 units and the target is 0.020 units. Assuming the ESS fraction and variability remain similar, by what factor should retained chain length increase?
  3. Why might a chain with 1,000 iterations provide less precision than a different chain with 600 iterations?
  4. A trace appears stable and the MCSE is small. What important conclusion about the FCS models does this not establish?

Solutions. (1) \(\widehat{\operatorname{MCSE}}\approx0.60/\sqrt{225}=0.60/15=0.040\) units. (2) The target halves MCSE, so required ESS and approximate length increase by \((0.040/0.020)^2=4\); the run should be about four times as long, subject to reassessment. (3) The 1,000-iteration chain may have stronger autocorrelation and hence lower ESS; precision depends on ESS and variability, not nominal length alone. (4) Stable behavior and small MCSE do not establish that the conditional models are correctly specified or mutually compatible.

Clinical Biostats