SPSS command: SPSS MULTIPLE IMPUTATION
Multiple imputation in your browser
Multiple imputation replaces each missing value with several plausible draws, analyses every completed dataset, and combines the results so standard errors reflect the missing information.
Free · No account · Files stay on your device · Updated 18 October 2026
What it tells you
Crosstabs runs the SPSS MULTIPLE IMPUTATION approach on your device, with FCS or monotone imputation, linear regression, predictive mean matching or logistic models, and pooled descriptives and linear regression.
- Which model imputed each variable (linear regression, predictive mean matching or logistic regression), with its predictors and how many values were imputed.
- How the imputed values compare with the observed ones, per imputation and for the completed data.
- Whether the FCS chains have converged, from the iteration history of the mean and SD of the imputed values.
- Pooled means and regression coefficients with Rubin's-rules standard errors, degrees of freedom, fraction of missing information and relative efficiency.
When to use it
Use it when
- Data are plausibly missing at random given other variables you have, and complete-case analysis would lose cases or bias results.
- You need honest standard errors for means or linear regression coefficients, not just a single filled-in dataset.
- You want the completed datasets as a file: the stacked CSV has an Imputation_ column, as in SPSS.
Use something else when
- Data missing not at random (for example, high earners skipping the income question for reasons unrelated to anything observed): imputation cannot correct that.
- With a sampling weight: imputation draws assume independent cases, so it is blocked. Clear the weight or declare a frequency weight.
- A gap-filled time series: use Replace Missing Values for interpolation or trend.
How to run it in Crosstabs
- 01
Open your data and check the patterns
Open the file in Statistics mode; running Analyze Patterns first shows whether the monotone method applies.
- 02
Choose the variables
In the Missing values group, pick Impute Missing Data Values and tick at least two Variables in the imputation model. Include the variables your later analysis uses and any that predict missingness.
- 03
Set measurement levels
Under Measurement level (sets the imputation model), mark each variable Scale or Categorical; categorical ones are imputed by logistic regression.
- 04
Choose the method and settings
Imputation method: Automatic, FCS or Monotone. Model for scale variables: Linear regression or Predictive mean matching. Set Number of imputations (default 5), Maximum FCS iterations (default 10) and the Random seed, then press Impute.
- 05
Pool the analysis
Under Analyze the imputed data (pooled results), tick Descriptives: variables and/or choose Linear regression: dependent and predictors, pick the Degrees of freedom rule, and press Run pooled analysis.
- 06
Download if needed
Download imputed data (stacked CSV) gives Imputation_ = 0 for the original data and 1 to m for the completed datasets, created on this device only.
Worked example
Computed by the Crosstabs engine from the synthetic data below when this page was built — not typed in.
Data
50 synthetic employees with tenure (years, complete), salary (thousands) and an engagement score. Salary is missing more often for staff with under five years' tenure, and engagement is missing at random, so the pattern is not monotone. Five imputations, ten FCS iterations and seed 20261017 keep the run small and reproducible.
| Item | Type | Effects | Missing Values | Imputed Values |
|---|---|---|---|---|
| salary | Linear Regression | tenure, engagement | 7 | 35 |
| engagement | Linear Regression | tenure, salary | 4 | 20 |
Method: Fully conditional specification (FCS); 5 imputations.
| Imputation | N | Mean | Std. Error of Mean | Fraction Missing Info. | Relative Efficiency |
|---|---|---|---|---|---|
| Original data | 43 | 57.46 | 1.430 | ||
| 1 | 50 | 56.24 | 1.347 | ||
| 2 | 50 | 57.26 | 1.268 | ||
| 3 | 50 | 56.98 | 1.279 | ||
| 4 | 50 | 56.32 | 1.335 | ||
| 5 | 50 | 56.41 | 1.362 | ||
| Pooled | 56.64 | 1.408 | 0.130 | 0.975 |
| Term | B | Std. Error | t | df | Sig. | 95% CI | Fraction Missing Info. |
|---|---|---|---|---|---|---|---|
| (Constant) | 32.950 | 7.787 | 4.23 | 239.8 | <.001 | 17.610 to 48.291 | 0.136 |
| tenure | 0.332 | 0.432 | 0.77 | 3530.7 | .441 | −0.514 to 1.179 | 0.034 |
| salary | 0.439 | 0.187 | 2.35 | 461.0 | .019 | 0.072 to 0.805 | 0.097 |
Rubin (1987) degrees of freedom. Average R² across imputations: 0.439 (not pooled).
How to read it
Automatic selection chose FCS. The observed salaries average 57.46 (N = 43), while the pooled mean over the five completed datasets is 56.64 (95% CI 53.87 to 59.41): imputing from tenure fills in the lower salaries of newer staff that were more often missing. In the pooled regression, B for salary is 0.439 (p = .019) and B for tenure is 0.332 (p = .441); the fraction of missing information is 0.097 for salary, which tells you how much of that coefficient's uncertainty comes from the gaps rather than the sample size.
Output tables explained
- Imputation Specifications
- Method actually used (and which one Automatic chose), number of imputations, model for scale variables, maximum iterations and the random seed.
- Imputation Models
- One row per imputed variable: model type, effects (predictors), missing values and total imputed values across imputations, in imputation order.
- {variable}: Descriptive Statistics
- For each imputed variable, Original Data, Imputed Values and Complete Data After Imputation, per imputation; categories are shown as counts and percents.
- Iteration History
- For FCS, line charts of the mean and SD of the imputed values at each iteration, one line per imputation; converged chains mix without a trend.
- Descriptive Statistics (pooled)
- Mean and standard error per imputation plus a Pooled row with df, 95% confidence interval, fraction of missing information, relative increase in variance and relative efficiency.
- Coefficients (pooled): dependent variable {variable}
- B and standard error per imputation and pooled B, SE, t, df, Sig. and 95% CI; footnotes give the joint D1 test that all slopes are 0 and the average R² (not pooled).
Assumptions and notes
- Missing at random given the variables in the imputation model; leave out a variable that drives missingness and the imputations will be biased.
- Linear-regression imputation assumes roughly normal residuals; predictive mean matching only imputes values that were actually observed, which suits skewed or bounded variables.
- Models include main effects only (no interactions); sparse categories can stop a logistic model from converging, and a footnote says so.
- The same seed reproduces the same imputations here, but SPSS uses a different random stream, so values will not match SPSS draw for draw.
How the results are validated
Rubin's rules match R mice::pool (Barnard–Rubin df) to 1e-10 and an independent implementation of the SPSS formulas (Rubin 1987 df, fraction of missing information, relative efficiency, D1 test) to 1e-10. Imputations are checked structurally: with 60 imputations, pooled regression coefficients fall within 0.35 standard errors of R mice (norm) and 0.6 of statsmodels MICE, pooled means within 0.35 standard errors of scikit-learn IterativeImputer and R mice, and predictive mean matching imputes observed values only. Validation evidence
Questions
How many imputations should I use?
Five (the SPSS default) is enough for point estimates when little information is missing. With a higher fraction of missing information, or if you care about stable p values, use 20 or more; relative efficiency in the pooled table shows what you gain.
FCS or monotone?
Automatic picks monotone when the pattern allows it and FCS otherwise. FCS works for any pattern by cycling through the variables; monotone imputes each variable once from the ones before it.
Why do my results differ slightly from SPSS?
Imputation is random. Crosstabs uses its own seeded stream, so individual draws differ from SPSS even with the same seed; pooled estimates should agree within Monte Carlo error, which shrinks as you add imputations.
Can I run other procedures on the imputed data?
Pooling inside the panel covers descriptives and linear regression. For other analyses, download the stacked CSV, run the model on each imputation and combine the estimates with Rubin's rules.
Which degrees-of-freedom rule should I choose?
Rubin (1987) is what SPSS reports. The Barnard–Rubin small-sample rule, as in R mice, gives more conservative df when the complete-data sample is small.
Do the imputed datasets leave my device?
No. They stay in the browser tab's memory, and the CSV download is created locally.
Related procedures
- Analyze PatternsMULTIPLE IMPUTATION /IMPUTE METHOD=NONE
- Missing Value AnalysisMVA
- Linear RegressionREGRESSION
- Replace Missing ValuesRMV
- BootstrappingBOOTSTRAP
- Free SPSS alternative: full coverage list
Run Multiple Imputation on your own data
Open a .sav, CSV or Excel file. Everything runs in your browser; the file never leaves your device.
SPSS is a trademark of IBM Corp. Crosstabs is not affiliated with or endorsed by IBM.