SPSS 命令: SPSS SIMPLAN / SIMRUN

在浏览器中做蒙特卡洛模拟

蒙特卡洛模拟为不确定的输入抽取成千上万个随机值,对每次抽取计算公式,展示可能结果的分布。

免费 · 无需注册 · 文件留在本机 · 更新于 2026年10月18日

能告诉你什么

Crosstabs 在你的设备上运行 SPSS SIMULATION 的模拟步骤:11 种输入分布、安全的表达式语言、百分位数、直方图以及 SPSS 的三种敏感性指标。

  • 当输入不确定时,利润、成本或需求等结果的期望值和离散程度。
  • 由第 5 到第 95 百分位数给出的可能结果范围,例如明年利润的 90% 区间。
  • 哪个输入最重要:看它与目标的相关、±1 个标准差时的逐一变化,以及对方差的贡献。

适用场景

适合使用

  • 预算、定价或产能问题中,有多个不确定输入且计算公式已知。
  • 以区间而不是单一最佳估计来传达风险。
  • 判断哪个输入值得更精确地测量。

改用其他方法

  • 输入之间高度相关:这里各输入独立抽取,可能低估或高估结果的离散程度。
  • 从数据集拟合分布或根据已拟合的预测模型进行模拟:SPSS SIMPLAN 可以做到,而本面板只使用你输入的分布。

在 Crosstabs 中如何操作

  1. 01

    选择模拟

    在“实用工具与图表”组中选择“模拟”;不需要数据文件。面板预置了一个可编辑的利润模型示例。

  2. 02

    定义输入

    为每一行设置“输入名称”和“分布”(固定值、正态、均匀、三角、对数正态、指数、贝塔、伽马、二项、泊松或分类)及其参数;可用“添加输入”或“删除”调整。

  3. 03

    编写目标表达式

    在“目标表达式”中使用输入名称、数字、+ − * / ^、比较运算、and/or/not 以及 sqrt、ln、min、max、if(条件, 则, 否则) 等函数。

  4. 04

    运行

    设置“迭代次数”(10 至 200,000,默认 10,000)和“随机种子”,然后点击“运行模拟”。模拟在后台线程中运行。

计算示例

以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。

数据

无需数据文件:三个不确定输入由分布定义——price ~ 正态(20, 2)、units ~ 三角(800, 1000, 1500)、cost ~ 均匀(9000, 12000)——目标表达式为 price * units − cost。迭代 5,000 次,种子 20261017。

目标摘要
项目值
平均值11590.8
标准差3860.8
最小值1346.0
最大值27068.4
第 5 百分位数5931.8
第 10 百分位数6903.9
第 25 百分位数8697.0
第 50 百分位数11220.4
第 75 百分位数14125.6
第 90 百分位数16842.8
第 95 百分位数18432.1

5000 次迭代中有 5000 次得到有限的目标值。

敏感性
输入与目标的相关+1 标准差时目标的变化−1 标准差时目标的变化对方差的贡献
price0.5872205.9−2205.90.314
units0.7862947.0−2947.00.688
cost−0.238−866.0866.00.076

结果解读

利润平均为 11591,标准差为 3861;90% 的模拟结果落在 5932 与 18432 之间。units 是不确定性的主要来源(相关 0.786,对方差的贡献 0.688),因此把 units 估计得更准,比细化其他输入更能收窄预测范围。

输出表格说明

目标的分布
模拟目标值的直方图。
目标摘要
平均值、标准差、最小值、最大值以及第 5、10、25、50、75、90、95 百分位数(HAVERAGE 定义),并给出得到有限值的迭代次数。
敏感性
每个输入与目标的相关;在其他输入保持模拟值不变时,该输入移动 +1 或 −1 个标准差引起的目标变化;以及对方差的贡献(Sobol 总效应指数)。

前提假设与注意事项

  • 各输入相互独立;不支持相关输入。
  • 结果含有蒙特卡洛误差,它随迭代次数的平方根减小;尾部百分位数比平均值需要更多迭代。
  • 相同种子在这里会重现相同的运行结果;SPSS 的随机数流不同,因此数值不会与 SPSS 逐次相同。

结果如何验证

模拟没有外部参考数据,测试检查已知答案:对 a + 2b(a 为正态、b 为均匀)做 100,000 次迭代,平均值与 16 相差不超过 5 个蒙特卡洛标准误,标准差与 4 相差不超过 0.05,相关系数与理论值相差不超过 0.01,逐一变化量精确一致到 1e-9。每种抽样分布的均值和方差在 200,000 次抽取上验证,同一种子的运行可重复,表达式解析器会拒绝语法之外的任何输入。 验证证据(英文)

常见问题

需要多少次迭代?

对多数模型,10,000 次即可得到稳定的平均值和中间百分位数。如果要以多位有效数字报告第 5 或第 95 百分位数,请增加到 50,000 次以上。

应该看哪种敏感性指标?

对方差的贡献回答哪个输入驱动了不确定性(包括通过交互作用的影响)。相关系数显示方向,逐一变化量则以目标本身的单位显示影响大小。

能用我的数据拟合输入分布吗?

本面板不支持,参数需要手动输入。可以先用 P-P 图与 Q-Q 图以及描述统计,根据数据选择分布及其参数。

表达式的计算安全吗?

安全。表达式由一个只包含数字、输入名称、运算符和固定函数列表的小型语法解析,任何其他内容都会被拒绝而不会被执行。

用你自己的数据运行模拟

打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。

打开分析工作区

SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。