进阶方法

多因素方差分析

案例数据

300 行电商促销实验记录,3 个分类因素(折扣形式 2 级 × 商品类型 3 级 × 用户层级 2 级 = 12 个组合单元)与 1 个连续因变量(客单价 元),完整演示三因素 ANOVA 全流程:设计校核 → Levene 方差齐性 → 三因素全模型(3 主效应 + 3 个二阶交互 + 1 个三阶交互) → 解读 → 简单效应。结论为"折扣形式的效果取决于商品类型,且老客对数码品类的溢价远高于服装"——折扣 × 商品类型 交互极强(partial η²=0.46),商品类型 × 用户层级 交互显著(partial η²=0.15),但折扣 × 用户层级 不显著、三方交互不显著,意味着可以分二维拆解,无需为每个 12 单元单独建模

文件名mul-way_anova.xlsx
样本量300 行(2×3×2=12 单元 × 25 行/单元,完全平衡设计)
变量数4 列(1 个因变量 Y + 3 个因子 A、B、C)
数据用途电商促销实验分析:折扣形式 / 商品类型 / 用户层级 三因素对客单价的联合影响
变量说明折扣(A,2 级:满减/直降)、商品类型(B,3 级:家居/数码/服装)、用户层级(C,2 级:新客/老客)、客单价(Y,连续,单位元)。

完整案例

1. 背景

某综合电商在 618 前做促销策略复盘,希望同时回答四个问题:①折扣形式(满减 vs 直降)整体上谁更能拉高客单价(A 主效应);②不同商品类型(家居 / 数码 / 服装)平均客单价是否有差异(B 主效应);③用户层级(新客 vs 老客)整体消费力是否不同(C 主效应);以及三组交互——折扣是否对某些品类特别有效、不同品类的老客溢价是否一致、三者是否存在更深的联合效应。多因素方差分析(Multi-way / N-way ANOVA)正是为这种"3 个及以上分类自变量同时影响一个连续因变量"的设计而生:相比 3 次独立的双因素 ANOVA,三因素模型只用一份数据就能同时分解 3 个主效应、3 个二阶交互(A×B、A×C、B×C)和 1 个三阶交互(A×B×C),把残差变异统一估计、避免重复检验导致的 α 膨胀;同时三因素全模型可在控制其他因子情况下检验单个主效应(更接近因果),样本利用率也比 2×2 单独跑高出 3 倍。本案例 300 行 12 单元完全平衡设计,演示从设计校核到三阶交互判读的完整决策流程。

2. 理论与公式

三因素方差把总变异分解为 3 个主效应、3 个二阶交互、1 个三阶交互和组内误差共 8 部分,用 F 检验各部分相对组内噪声是否显著。

模型方程

μ 总均值,α / β / γ 三个主效应,(αβ) / (αγ) / (βγ) 三个二阶交互,(αβγ) 三阶交互,ε 组内残差。

F 统计量

各效应均方与组内均方比值;p<0.05 表示该效应显著优于纯噪声,不能由抽样误差解释。

偏 Eta 方

该效应能解释多少剩余变异,0.01 / 0.06 / 0.14 大致对应小 / 中 / 大效应;多因素模型推荐使用偏 η² 而非整体 η²。

3. 数据结构

300 行 × 4 列,"长格式"宽表:每行 1 单订单的最终结果,1 列连续 Y + 3 列分类 X。2×3×2=12 个单元各 25 行,完全平衡设计:

变量名类型取值业务含义
折扣因子 A(分类,2 级)满减 / 直降促销机制,满减=满 N 元减 M 元 / 直降=单品标价直接下调,每级 150 行
商品类型因子 B(分类,3 级)家居 / 数码 / 服装销售品类,每级 100 行
用户层级因子 C(分类,2 级)新客 / 老客下单前 90 天内是否有过订单,每级 150 行
客单价因变量 Y(连续)50-300 元单笔订单实付金额(含运费、扣完优惠),N=300,总均值 180.77,SD 23.17

完全平衡设计(12 单元各 25 行)使 Type Ⅰ / Ⅱ / Ⅲ 平方和结果一致,本案例采用 Type Ⅱ SS;3 个分类因子按字符串编码,模型内部自动哑变量化;连续 Y 无缺失值,可直接进入 ANOVA。每单元 25 行已超过经验阈值 n≥20,确保 F 检验稳健。

4. 操作步骤

  1. 登录 SPSSzero,进入 工作台 → 上传 mul-way_anova.xlsx
  2. 左侧方法栏 → 进阶方法 → 点击 多因素方差分析
  3. 客单价 拖入 因变量 Y(必须连续型)
  4. 折扣(A)、商品类型(B)、用户层级(C)依次拖入 因子列表,共 3 个
  5. 设计校核:在结果页头部确认 12 单元各 25 行(完全平衡),且无空单元——空单元会导致部分交互无法估计
  6. 勾选 Levene 方差齐性检验,先确认 12 单元的方差是否齐
  7. 选择模型:默认 全因子模型(3 主效应 + 3 二阶交互 + 1 三阶交互,共 7 项),平衡设计推荐 Type Ⅱ SS
  8. 勾选 边际均值 + 偏 η²,便于按效应量大小排序判读
  9. 点击 开始分析;解读优先级:三阶交互 → 二阶交互 → 主效应(自上而下)。若三阶不显著,把 7 个效应拆为下游 2 个二维子分析;若某个二阶不显著(如本例 A×C),把 A 和 C 视作独立主效应即可
  10. 对显著的二阶交互勾选 简单效应(如在每种商品类型下检验折扣的差异),输出 t 值 + 差值 + p;用于撰写"在 X 条件下 Y 因子起作用" 的业务结论

5. 结果表格与结果阅读

下面展示 3 张紧凑三线表:表 1 为 12 单元描述统计 + 三类边际均值,表 2 为三因素 ANOVA 主表(7 行效应 + 残差),表 3 合并 Levene 齐性 + 关键简单效应 + Tukey HSD。

表1 12 单元 / 边际描述统计(N=300,单位元)
折扣 × 商品类型新客(mean, n)老客(mean, n)行均值(折扣 × 品类)
满减 × 家居160.77 (25)177.15 (25)168.96 (50)
满减 × 数码166.45 (25)194.37 (25)180.41 (50)
满减 × 服装172.04 (25)178.39 (25)175.21 (50)
直降 × 家居179.74 (25)192.49 (25)186.12 (50)
直降 × 数码200.49 (25)229.89 (25)215.19 (50)
直降 × 服装157.31 (25)160.20 (25)158.76 (50)
折扣边际满减 174.86 (150) / 直降 186.69 (150)总均值 180.77 (300)
商品类型边际家居 177.54 (100) / 数码 197.80 (100) / 服装 166.98 (100)SD=23.17
用户层级边际新客 172.80 (150) / 老客 188.75 (150)差 +15.95
最贵单元 直降 × 数码 × 老客 = 229.89 元(比总均值高 49.12 元),最便宜单元 直降 × 服装 × 新客 = 157.31 元(比总均值低 23.46 元);折扣形式在家居 / 数码下"直降 > 满减",但在服装下方向反转(直降 158.76 < 满减 175.21),这是 A×B 交互的典型信号。
表2 三因素 ANOVA 主表(Type Ⅱ SS,N=300,3 主 + 3 二阶 + 1 三阶 + 残差)
来源SS(平方和)dfMS(均方)Fp偏 η²
折扣(A 主效应)10490.372110490.37274.556<0.001***0.206
商品类型(B 主效应)49061.419224530.710174.341<0.001***0.548
用户层级(C 主效应)19078.114119078.114135.589<0.001***0.320
折扣 × 商品类型(A×B)33880.082216940.041120.394<0.001***0.455
折扣 × 用户层级(A×C)65.754165.7540.4670.4950.002
商品类型 × 用户层级(B×C)7294.33023647.16525.921<0.001***0.152
折扣 × 商品类型 × 用户层级(A×B×C)105.848252.9240.3760.6870.003
残差(组内)40523.055288140.705
* p<0.05 ** p<0.01 *** p<0.001;按 partial η² 排序:商品类型主效应(0.548,大)A×B 交互(0.455,大) ≫ 用户层级主效应(0.320,大) ≫ 折扣主效应(0.206,大) ≫ B×C 交互(0.152,大) ≫ A×C 交互(0.002,可忽略) ≫ A×B×C 三阶(0.003,可忽略)。3 主 + A×B + B×C 共 5 项显著,A×C 与三阶不显著——意味着可按"折扣×商品类型"与"商品类型×用户层级"两组二维交互分别解读,无需保留三阶项。
表3 Levene 方差齐性 + 关键简单效应 + Tukey HSD 多重比较
检验类型分组 / 对比统计量p解读
Levene 齐性12 单元方差W(11,288)=1.5010.130✅ p>0.05,方差齐性通过,三因素 ANOVA 可用
简单效应 A | B家居:直降 vs 满减t≈6.60<0.001差 +17.16 元,直降占优
简单效应 A | B数码:直降 vs 满减t≈8.91<0.001+34.78 元,直降占优,差距最大
简单效应 A | B服装:直降 vs 满减t≈−7.10<0.001差 −16.46 元,方向反转,满减占优
简单效应 C | B家居:老客 vs 新客t≈5.29<0.001差 +14.57 元,老客溢价中等
简单效应 C | B数码:老客 vs 新客t≈6.54<0.001+28.66 元,老客溢价最大
简单效应 C | B服装:老客 vs 新客t≈1.640.104差 +4.62 元,老客溢价不显著
Tukey HSD(B 边际)数码 vs 家居diff=+20.27<0.001数码显著高于家居
Tukey HSD(B 边际)家居 vs 服装diff=+10.55<0.001家居显著高于服装
Tukey HSD(B 边际)数码 vs 服装diff=+30.82<0.001数码显著高于服装(差距最大)
A×B 简单效应:折扣形式对家居 / 数码均"直降 > 满减",但在服装上反转——服装属性的促销心理学(用户更感知"满减 = 多买省更多")与数码"高单价直降冲击力"截然不同。B×C 简单效应:老客对数码品类的溢价(+28.66 元)显著高于家居(+14.57)且远高于服装(+4.62,不显著)——数码忠诚老客愿为升级款付更多。

7. 文字分析

三因素方差分析(N=300,2 折扣 × 3 商品 × 2 用户层级 × 25 行/单元)综合结果:

  • 折扣主效应(A):F(1,288)=74.56,p<0.001,partial η²=0.206(大效应)。直降平均客单价 186.69 元,满减 174.86 元,直降整体领先 11.83 元(约 6.8%)。但 A×B 交互极强(partial η²=0.455)说明这只是"平均值"层面,单看主效应会掩盖服装品类下"满减反而更好"的反向事实,详见交互解读。
  • 商品类型主效应(B):F(2,288)=174.34,p<0.001,partial η²=0.548(最强主效应)。数码 197.80 元 ≫ 家居 177.54 元 ≫ 服装 166.98 元,Tukey HSD 三组两两差异均 p<0.001。数码品类单价天然偏高、且对促销响应最敏感。
  • 用户层级主效应(C):F(1,288)=135.59,p<0.001,partial η²=0.320(大效应)。老客 188.75 元,新客 172.80 元,老客溢价 +15.95 元(约 9.2%)。但 B×C 交互显著(partial η²=0.152)提示这个溢价在不同品类下分布严重不均——数码品类老客溢价 +28.66 元,服装品类老客溢价仅 +4.62 元且不显著。
  • 折扣 × 商品类型 交互(A×B,最重要的发现):F(2,288)=120.39,p<0.001,partial η²=0.455(极强交互)。"哪种折扣形式有效"高度取决于品类——①数码:直降占绝对优势(215.19 vs 180.41,差 +34.78 元),高单价品类下"直接降价"心理冲击远大于"凑单减";②家居:直降略优(186.12 vs 168.96,差 +17.16);③服装:方向反转,满减占优(满减 175.21 vs 直降 158.76,差 −16.46)——服装单价低、SKU 多,用户更倾向"凑满减多买几件"。结论:不能用同一套折扣机制打三品类,必须按品类定制
  • 商品类型 × 用户层级 交互(B×C):F(2,288)=25.92,p<0.001,partial η²=0.152(大效应)。老客溢价在不同品类下差异巨大:数码 +28.66 元(最高) > 家居 +14.57 元 > 服装 +4.62 元(不显著)。业务含义:数码老客已建立品牌信任、愿为升级款支付更高溢价;服装老客在多个店铺间高度迁徙,忠诚度对客单价的拉动微弱。会员体系应优先聚焦数码 + 家居老客经营,服装拼新客拉新即可
  • 折扣 × 用户层级(A×C)+ 三阶(A×B×C)均不显著:A×C F(1,288)=0.47,p=0.495;A×B×C F(2,288)=0.38,p=0.687;两项 partial η² 均 ≤ 0.003,可忽略。这意味着——①新客和老客对"满减 vs 直降"的偏好方向一致,没必要按客群定制折扣文案;②上面两个二阶交互可独立解读,不存在"折扣 × 商品类型的模式在新老客之间还要再变一次"的复杂三向调节。这是个好消息:模型可以简化为"3 主效应 + A×B + B×C"五项即可解释 96% 的有效信息
  • 方差齐性(Levene 检验):W(11,288)=1.501,p=0.130,方差齐性通过。12 单元的客单价波动幅度无显著差异,ANOVA 前提满足,F 检验结果可信。

运营策略建议:①废弃"满减还是直降"的全局选择题,改按品类下发——数码 + 家居用直降、服装用满减;②本季度最优单元是 直降 × 数码 × 老客(229.89 元),应作为旗舰主推;③避免最差组合 直降 × 服装 × 新客(157.31 元)——服装新客投放停掉直降券,全量改满减;④会员体系优先经营 数码 + 家居老客,服装老客 ROI 不足建议把预算切给拉新;⑤新老客对折扣形式偏好一致,不需要为新老客拆两套创意。下一阶段如要进一步验证,可设计 4 因素 ANOVA(加入"促销时段"维度)或对显著二阶交互做事后简单效应配对 + Bonferroni 校正,避免 α 膨胀。

8. 剖析提醒

解读顺序:三阶 → 二阶 → 主效应。本例三阶不显著(p=0.687)可直接降为 2 个二维分析;如三阶显著则必须先报告"在 C 的某水平下 A×B 模式如何",再分层报主效应。不平衡设计要切到混合模型:本案例 12 单元各 25 行完全平衡,Type Ⅰ/Ⅱ/Ⅲ SS 等价;如果实际数据每单元行数差异 > 20%(例如老客远多于新客),应改用 Type Ⅲ SS 或线性混合模型(LMM / mixed-effects),把"店铺 / 投放日期"等无关协变量纳入随机效应控制。因子数越多越要看 partial η²:3 因素 7 项检验下 α 膨胀风险显著,单看 p<0.05 容易把"统计显著但效应可忽略"的项当成发现,partial η²<0.01 的效应(如本例 A×C 0.002)即使 p 显著也无业务价值。每单元 n 至少 ≥ 15:本例 n=25 已超经验阈值,如低于该阈值(如细分到 4 个因子后每单元只剩 8 行),F 检验稳健性下降,应合并水平或采用 Bootstrap 重抽样估计。