能告诉你什么
Crosstabs 在你的设备上按 SPSS BOOTSTRAP 的方法计算描述统计、Pearson 相关和线性回归系数,提供百分位或 BCa 区间、可选分层,以及可复现的随机种子。
- 为没有简单公式的统计量(例如中位数或标准差)给出标准误和区间。
- 在不假设误差正态的情况下,相关系数或回归系数是否明显不为零。
- Bootstrap 偏差:重抽样统计量的平均值与原始估计值相差多少。
- 对于偏态统计量,非对称的 BCa 区间与简单百分位区间有多大差别。
适用场景
适合使用
- 消费金额或时长等偏态数据,基于正态理论的均值区间值得怀疑。
- 中位数和标准差,其抽样分布没有方便的闭式解。
- 检查回归或相关结果是否依赖于正态性或方差齐性假设。
改用其他方法
- 样本很小(例如少于 20 个个案):重抽样只能重新组合仅有的少数值,区间会偏窄。
- 带抽样权重、分层和整群的调查数据:个案重抽样忽略了抽样设计,因此被阻止;请使用复杂抽样。
- 时间序列或其他相关观测:逐个案重抽样会破坏观测之间的相关结构。
在 Crosstabs 中如何操作
- 01
打开数据
在工作区打开 .sav、CSV 或 Excel 文件并切换到“统计”模式。
- 02
选择要进行 Bootstrap 的统计量
在“实用工具与图表”组中选择“Bootstrap 抽样”,然后在“要进行 Bootstrap 的统计量”中选择:描述统计(平均值、中位数、标准差)、Pearson 相关或线性回归系数。
- 03
选择变量
勾选“变量”(相关分析至少两个)及要计算的统计量;回归分析则选择“因变量”并勾选“预测变量”。
- 04
设置重抽样
“样本数”(默认 1000)、“置信水平(%)”(默认 95)、“置信区间”(百分位或偏差校正加速 BCa)、“抽样”(简单或选择分层变量)和“随机种子”。
- 05
运行
将启用的权重声明为频数权重(抽样权重会阻止运行),然后点击“运行”;重抽样在后台线程中进行。
计算示例
以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。
数据
30 个模拟网购订单金额(货币单位),由固定种子从右偏的对数正态分布生成。Bootstrap 使用 1,000 个简单重抽样样本(SPSS 默认值)和种子 20261017。
| 统计 | N | 统计 | 偏差 | 标准误 | 95% 置信区间下限(百分位) | 95% 置信区间上限(百分位) | 95% 置信区间(BCa) |
|---|---|---|---|---|---|---|---|
| 平均值 | 30 | 39.21 | 0.210 | 4.599 | 31.34 | 49.53 | 32.06 to 50.67 |
| 中位数 | 30 | 31.66 | 1.293 | 4.352 | 25.24 | 43.00 | 22.67 to 42.90 |
| 标准差 | 30 | 24.88 | −0.716 | 4.734 | 14.46 | 32.93 | 16.98 to 36.04 |
基于 1000 个简单 Bootstrap 样本(种子 20261017)。两种区间使用相同的重抽样样本,因此偏差和标准误相同。
结果解读
订单金额的平均值为 39.21,Bootstrap 标准误为 4.60;校正了偏差和偏度的 95% BCa 区间(示例运行的就是这一种)为 32.06 至 50.67,普通百分位区间(SPSS 默认)则为 31.34 至 49.53。中位数(31.66)没有简单的教科书标准误公式,这正是 Bootstrap 的用武之地:其 BCa 区间为 22.67 至 42.90。
输出表格说明
- 描述统计的 Bootstrap
- 每个变量和统计量的 N、统计量值、Bootstrap 偏差、标准误以及置信区间上下限。
- 相关性的 Bootstrap
- 每对变量的 r 及其偏差、标准误和区间;摘要说明区间是否包含 0。
- 系数的 Bootstrap
- 常量和每个预测变量的 B,以及 Bootstrap 偏差、标准误和区间;缺失值按成列方式排除。
前提假设与注意事项
- 个案相互独立且样本能代表总体;Bootstrap 无法修正有偏样本。
- 百分位上下限按 SPSS 的方式取 (B + 1) 次序统计量;若端点超出 Bootstrap 分布范围,则显示极值并加脚注说明。
- 使用频数权重时,重抽样中每个个案代表相应数量的个案;分层抽样保持各层规模不变。
- 相同种子在这里会重现相同的重抽样;SPSS 的随机数流不同,因此数值不会与 SPSS 逐次相同。
结果如何验证
独立参考实现生成参考值时使用同一带种子生成器的 Python 移植版,因此重抽样索引完全相同。在 1,000 次重抽样上,偏差和标准误与 SPSS 规则((B + 1) 次序统计量、刀切法加速常数)的独立实现一致到 1e-9,百分位与 BCa 上下限一致到 1e-10;输入相同重抽样的 scipy.stats.bootstrap 一致到 1e-9。回归系数、分层重抽样和频数权重(对照展开数据)也都经过测试。 验证证据(英文)
常见问题
选百分位区间还是 BCa?
百分位区间简单,也是 SPSS 的默认值。BCa 校正了 Bootstrap 分布的偏差和偏度,覆盖率通常更好,尤其适合偏态统计量;代价是多做一次刀切法计算。
需要多少个 Bootstrap 样本?
1,000 个(SPSS 默认)足以估计标准误和 95% 百分位区间。若用 BCa 或 99% 区间,2,000–10,000 个样本能使端点更稳定。
为什么改变种子后区间会变?
不同的种子产生不同的重抽样集合,端点会有少量蒙特卡洛波动。请在报告中注明种子以便他人复现;若波动影响结论,就增加样本数。
能像 SPSS 那样对任意过程做 Bootstrap 吗?
不能。该面板只对描述统计(平均值、中位数、标准差)、Pearson 相关和线性回归系数做 Bootstrap,其他过程在此不提供 Bootstrap 选项。
为什么不允许使用抽样权重?
把个案当作相互独立来重抽样会忽略分层和整群,导致标准误错误。请使用复杂抽样,它根据抽样设计估计方差。
相关过程
- 描述统计DESCRIPTIVES
- 双变量相关CORRELATIONS
- 线性回归REGRESSION
- 模拟SIMPLAN / SIMRUN
- 复杂抽样描述统计CSDESCRIPTIVES
- 免费的 SPSS 替代工具:支持范围
用你自己的数据运行 Bootstrap(自助法)
打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。
SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。