能告诉你什么
Crosstabs 在你的设备上运行与 SPSS MVA 对应的过程:含极值计数的单变量缺失统计、表格化缺失模式、方差不等 t 检验、成列、成对与 EM 估计,以及 Little 的 MCAR 检验。
- 每个变量缺失多少个值(计数与百分比),系统缺失和已声明的用户缺失代码都计入。
- 哪些变量倾向于同时缺失,以及每种模式包含多少个案。
- 跳过某题的人在其他变量上是否不同:Welch t 检验比较每个定量变量在“存在”与“缺失”两组之间的差异。
- 数据是否符合完全随机缺失(MCAR):根据 EM 估计计算 Little 的卡方检验。
- 成列删除、成对删除与 EM(MAR 假设下的最大似然)三种方式下,平均值、协方差和相关如何变化。
适用场景
适合使用
- 在对调查或固定样本数据建模之前,判断只用完整个案是否站得住脚,还是需要插补。
- 当审稿人或客户询问缺失是否随机时:报告 Little 的 MCAR 检验和方差不等 t 检验。
- 当完整的多重插补超出所需时,用 EM 平均值和相关作为基于 MAR 假设的快速汇总。
改用其他方法
- 需要得到补全后的数据集用于分析:EM 估计只是汇总统计量,不是插补值。请使用多重插补并汇聚结果。
- 按相邻值填补时间序列的缺口:使用替换缺失值。
- 使用抽样(调查)权重且需要检验时:此时只显示描述性表格,基于设计的推断请使用复杂抽样。
在 Crosstabs 中如何操作
- 01
打开数据
在工作区打开 .sav、CSV 或 Excel 文件并切换到“统计”模式。.sav 文件中已声明的用户缺失代码会被识别。
- 02
选择缺失值分析
在“缺失值”组中选择“缺失值分析”(MVA)。
- 03
选择变量
勾选“定量变量”(至少一个),可选勾选“分类变量”;分类变量计入缺失统计和模式,但不参与 EM。
- 04
选择输出表
保持勾选“表格化模式和图表”与“方差不等 t 检验”,并设置“省略个案少于以下比例的模式(%)”和“省略缺失少于以下比例的指示变量(%)”(默认 1% 与 5%)。勾选“EM 估计和 Little 的 MCAR 检验”并设置“EM 最大迭代次数”;如需比较,可再勾选“成列估计”或“成对估计”。
- 05
声明权重后运行
如果启用了权重,请说明它是频数权重还是抽样权重(系统不会自行猜测),然后点击“运行”。分析在你设备上的后台线程中运行。
计算示例
以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。
数据
60 名模拟客户,包含年龄、收入(千元)、满意度(0–10)和地区。35 岁以下客户的收入被有意设置为更常缺失,因此缺失与一个已观测变量有关;满意度和地区则随机缺失。固定随机种子保证每次构建结果相同。
| 项目 | N | 平均值 | 标准差 | 缺失计数 | 缺失百分比 | 低极值数 | 高极值数 |
|---|---|---|---|---|---|---|---|
| age | 60 | 41.63 | 11.31 | 0 | 0.0% | 0 | 0 |
| income | 44 | 56.65 | 11.54 | 16 | 26.7% | 0 | 0 |
| satisfaction | 53 | 6.22 | 1.33 | 7 | 11.7% | 1 | 0 |
| region | 56 | 4 | 6.7% |
极值:落在 Q1 − 1.5 × IQR 与 Q3 + 1.5 × IQR 之外的个案。
| 缺失指示变量 | 变量 | t | df | P(双尾) | 存在数 | 缺失数 | 平均值(存在) | 平均值(缺失) |
|---|---|---|---|---|---|---|---|---|
| income | age | 4.42 | 29.2 | <.001 | 44 | 16 | 44.91 | 32.63 |
| income | satisfaction | 0.49 | 17.9 | .629 | 40 | 13 | 6.27 | 6.05 |
| satisfaction | age | 3.28 | 13.1 | .006 | 53 | 7 | 42.68 | 33.71 |
| satisfaction | income | 1.60 | 4.3 | .180 | 40 | 4 | 57.31 | 49.98 |
| region | age | 0.63 | 3.3 | .571 | 56 | 4 | 41.93 | 37.50 |
| region | income | 0.06 | 2.1 | .958 | 41 | 3 | 56.69 | 56.07 |
| region | satisfaction | 0.89 | 3.6 | .429 | 49 | 4 | 6.26 | 5.70 |
| 项目 | age | income | satisfaction |
|---|---|---|---|
| 平均值 | 41.63 | 53.80 | 6.18 |
| 标准差 | 11.31 | 12.39 | 1.32 |
Little 的 MCAR 检验:卡方 = 16.299,自由度 = 5,显著性 = .006。EM 在 13 次迭代后收敛。
结果解读
60 个个案中有 23 个(38.3%)至少有一个缺失值。方差不等 t 检验显示,收入缺失的客户更年轻(平均年龄 32.6 对 44.9,p < .001);Little 的 MCAR 检验为 χ²(5) = 16.30,p = .006。两者结合提示:只用完整个案分析会高估年长客户的比重;收入的 EM 平均值(53.80,已观测值的平均值为 56.65)借助年龄对此做了校正。
输出表格说明
- 单变量统计
- N、平均值、标准差、缺失计数与百分比,以及低、高极值数(落在 Q1 − 1.5 × IQR 与 Q3 + 1.5 × IQR 之外;大文件改用平均值 ± 2 个标准差)。
- 方差不等 t 检验
- 对每个指示变量,把个案分为“存在”和“缺失”两组,用 Welch t 检验比较每个定量变量。p 值小说明数据可能不是完全随机缺失。
- 表格化模式
- 每行是一种缺失值模式(X 表示该变量缺失),给出个案数和“完整条件…”计数:去掉这些变量后会有多少完整个案。“缺失值模式”图展示同样的模式。
- EM 平均值
- EM 算法估计的平均值和标准差;脚注给出 Little 的 MCAR 检验(卡方、自由度、显著性)及收敛状态。随后是 EM 协方差和 EM 相关性表。
- 估计平均值和标准差摘要:成列
- 可选的成列与成对表(平均值、协方差、相关性及成对频数)让你看到删除方式对各估计值的影响有多大。
前提假设与注意事项
- EM 和 Little 检验把定量变量视为多元正态;严重偏态的变量可能使 MCAR 检验过于频繁地拒绝。
- 在给定分析变量的条件下数据为随机缺失(MAR)时,EM 估计才有效;它无法纠正非随机缺失(MNAR)的数据。
- Little 的 MCAR 检验至少需要两种缺失值模式;所有定量变量均缺失的个案不纳入 EM。
- 使用抽样权重时只报告单变量统计和模式;t 检验、EM 和 Little 检验假定个案独立,因此不予报告。
结果如何验证
MVA 引擎与独立的 Python 参考实现生成的参考值对照验证:单变量、成列与成对统计量与 numpy/pandas 一致(相对误差 1e-11 以内),方差不等 t 检验与 scipy.stats.ttest_ind(Welch)一致(1e-10),采用 SPSS n − 1 分母的 EM 与独立的 numpy 实现一致(1e-9),Little 检验一致到 1e-8;最大似然 EM 及 Little 检验与 R norm::em.norm(经 naniar::mcar_test)一致到 1e-7。频数权重经测试与展开后的数据结果一致。 验证证据(英文)
常见问题
Little 的 MCAR 检验显著,该怎么办?
数据很可能不是完全随机缺失,成列删除可能导致偏差。查看方差不等 t 检验,找出哪些已观测变量能预测缺失,把它们纳入模型,并使用 EM 或多重插补——它们只要求 MAR,而不要求 MCAR。
MCAR 检验不显著能证明数据是 MCAR 吗?
不能。它只说明在这些变量中没有反对 MCAR 的证据;个案少时检验效能很低,而且它无法发现取决于缺失值本身的缺失机制。
可以把 EM 平均值作为最终结果吗?
在 MAR 下它们是不错的点估计,但没有能反映缺失信息的标准误。若要做检验和置信区间,请生成多个插补数据集并按 Rubin 规则汇聚。
像 99 这样的用户缺失代码会被当作缺失吗?
会。变量元数据中声明为用户缺失的代码按缺失计算,脚注会列出每个变量有多少个。
我的数据会被上传吗?
不会。MVA 在浏览器标签页内的 Web Worker 中运行,文件不会发送到 Crosstabs 服务器。
相关过程
- 分析模式MULTIPLE IMPUTATION /IMPUTE METHOD=NONE
- 多重插补MULTIPLE IMPUTATION
- 替换缺失值RMV
- 描述统计DESCRIPTIVES
- 独立样本 t 检验T-TEST GROUPS
- 免费的 SPSS 替代工具:支持范围
用你自己的数据运行缺失值分析
打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。
SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。