# 概述

单因子方差分析(One-way ANOVA)是一种统计方法,用于比较两个或多个组(或称因子水平)的平均值是否存在显著差异。

  • 变量类型:
    • 响应变量 (Y):连续变量。
    • 因子 (X):离散变量,其每个可能取值被称为一个水平 (level)
  • 分析目标: 关注不同因子水平下响应变量的平均值是否存在差异。
  • 核心步骤:
    1. 检验不同因子水平的平均响应是否相同。
    2. 如果不同,进一步分析差异的大小及其统计与实际意义。

# 模型假设

为了使单因子方差分析有效,数据需要满足以下核心假设:

  1. 独立性: 每个因子水平下的响应变量是从其相应的概率分布中独立随机抽取的,且不同因子水平的响应之间也相互独立。
  2. 正态性: 每个因子水平下的响应变量都服从正态分布。
  3. 方差齐性: 每个因子水平下响应变量的正态分布具有相同的方差 ($ \sigma^2 $)。
  4. 均值依赖性: 响应变量的均值可能取决于其所属的因子水平。

# 单因子方差分析模型

# 单元格均值模型 (Cell Means Model)

该模型直接对每个因子水平的均值进行建模,是单因子 ANOVA 的基本形式。

  • 模型公式:

    Yij=μi+εijεijN(0,σ2)Y_{ij}=\mu_i+\varepsilon_{ij}\\ \varepsilon_{ij}\sim N(0,\sigma^2)

    • YijY_{ij}:第 ii 个因子水平下第 jj 个样本的响应值。
    • μi\mu_i:第 ii 个因子水平的总体均值。
    • εij\varepsilon_{ij}:随机误差项,服从均值为0、方差为 σ2\sigma^2 的正态分布。
  • 参数数量: 该模型包含 rr 个均值参数 (μ1,...,μr\mu_1, ..., \mu_r) 和1个方差参数 (σ2\sigma^2),总计 r+1r+1 个参数。
  • 参数估计:
    • ii 个因子水平的均值估计值:μ^i=Yˉi.=j=1niYij/ni\hat{\mu}_i = \bar{Y}_{i.} = \sum_{j=1}^{n_i} Y_{ij} / n_i
    • ii 个因子水平的方差估计值:si2=j=1ni(YijYˉi.)2/(ni1)s_i^2 = \sum_{j=1}^{n_i} \left( Y_{ij} - \bar{Y}_{i.} \right)^2 / (n_i - 1)
  • 合并方差估计 (Pooled Variance Estimate):
    • 由于假设方差齐性,可以合并每个水平的方差来得到一个更稳健的总体方差估计。
    • s2=spooled2=i(ni1)si2i(ni1)=i(ni1)si2nTrs^2 = s^2_{pooled} = \frac{\sum_{i} (n_i - 1) s_i^2}{\sum_{i} (n_i - 1)} = \frac{\sum_{i} (n_i - 1) s_i^2}{n_T - r}
      • nTn_T 为总样本量,rr 为因子水平数。

# 因子效应模型 (Factor Effects Model)

该模型将总体均值和因子水平的效应分离,用于描述不同水平与总体均值之间的关系。

  • 模型公式:

    Yij=μ+τi+εijεijN(0,σ2)Y_{ij}=\mu+\tau_i+\varepsilon_{ij}\\ \varepsilon_{ij}\sim N(0,\sigma^2)

    • μ\mu:所有因子水平的总体均值。
    • τi\tau_i:第 ii 个因子水平的效应,表示其均值与总体均值 μ\mu 的偏差。
  • 参数数量: 该模型包含 rr 个效应参数 (τ1,...,τr\tau_1, ..., \tau_r)、1个总体均值参数 (μ\mu) 和1个方差参数 (σ2\sigma^2),总计 r+2r+2 个参数。
  • 参数限制:
    • 由于参数过多无法唯一确定,需要施加限制条件。常见的两种限制:
      • 非加权限制: i=1rτi=0\sum_{i=1}^r\tau_i=0。此时 μ\mu 估计为非加权的总体平均。
      • 加权限制: i=1rwiτi=0, wi=ni/nT\sum_{i=1}^rw_i\tau_i=0, \ w_i=n_i/n_T。此时 μ\mu 估计为加权的总体平均 Yˉ..\bar Y_{..}
  • 与单元格均值模型的比较:
    • 单元格均值模型更直接地对均值进行估计,适合需要直接解释各水平均值的情况。
    • 因子效应模型更适合方差分析,因为它将变异分解为由因子效应引起的变异和随机误差引起的变异,与 ANOVA 表的结构更吻合。在R语言中,该模型通常不包含截距项,其自由度与实际更匹配。

# 单因子 ANOVA 推断

# 方差分析表 (ANOVA Table)

方差分析的核心在于变异的分解,并将其整理到 ANOVA 表中。

  • 核心思想: 总变异(Total Sum of Squares, SST)被分解为模型(因子)引起的变异(Model Sum of Squares, SSM 或 SSR)和误差(Error Sum of Squares, SSE)引起的变异。
  • ANOVA 表结构:

    变异来源 Source自由度 df平方和 SS均方 MS模型 Modelr1ini(Yˉi.Yˉ..)2MSR=SSR/dfR误差 ErrornTri,j(YijYˉi.)2MSE=SSE/dfE总计 TotalnT1i,j(YijYˉ..)2SST/dfT\begin{array}{|c|c|c|c|} \hline \text{变异来源 Source} & \text{自由度 df} & \text{平方和 SS} & \text{均方 MS} \\ \hline \text{模型 Model} & r - 1 & \sum_{i} n_i (\bar{Y}_{i.} - \bar{Y}_{..})^2 & \text{MSR} = \text{SSR} / \text{df}_R \\ \hline \text{误差 Error} & n_T - r & \sum_{i,j} (Y_{ij} - \bar{Y}_{i.})^2 & \text{MSE} = \text{SSE} / \text{df}_E \\ \hline \text{总计 Total} & n_T - 1 & \sum_{i,j} (Y_{ij} - \bar{Y}_{..})^2 & \text{SST} / \text{df}_T \\ \hline \end{array}

# F 检验

F 检验用于判断各因子水平的总体均值是否相等。

  • 原假设 (H0H_0): μ1=μ2=...=μr\mu_1 = \mu_2 = ... = \mu_r (或在因子效应模型中,H0:τ1=τ2=...=τr=0H_0: \tau_1 = \tau_2 = ... = \tau_r = 0)。
  • F 统计量: F=MSR/MSEF^* = MSR / MSE
  • F 统计量的期望:
    • E(MSE)=σ2E(\text{MSE}) = \sigma^2
    • E(MSR)=σ2+ini(μiμ.)2/(r1)E(\text{MSR}) = \sigma^2 + \sum_{i} n_i (\mu_i - \mu_{.})^2/(r - 1), 其中 μ.=iniμi/nT\mu_{.} = \sum_{i} n_i \mu_i/n_T
  • 检验结论: 在 H0H_0 成立时,FF^* 服从自由度为 (r1,nTr)(r-1, n_T-r) 的 F 分布,即 FFr1,nTrF^* \sim F_{r-1,n_T-r}。如果 FF^* 的值远大于1,则拒绝原假设,认为至少有两个均值不相等。

# 置信区间 (CI)

置信区间可以估计单个或多个均值差异的范围。

  • 单个因子水平的均值置信区间:
    • $ \bar Y_{i.}\pm t_c s/\sqrt{n_i} $
    • 其中 tct_c 是基于 nTrn_T - r 自由度的 tt 分布的临界值,而 ss 是合并方差的平方根 (s=MSEs = \sqrt{MSE})。
    • 注意: 由于使用了合并方差 ss 而非单个水平的方差 sis_i,该置信区间更窄、更稳定。

# 多重比较与对照

当 F 检验显著时,我们需要进一步确定哪些组别之间存在差异。这通常通过多重比较或对照来实现。

# 多重比较

多重比较旨在控制所有成对比较的总体第一类错误率(family-wise error rate)。

  • 问题: 未经修正的多次比较会导致第一类错误(错误地拒绝原假设)的概率累积。

  • 均值差异置信区间:

    • $\mu_i - \mu_k $ 的置信区间: $ \bar{Y}{i.} - \bar{Y} \pm t_c , s \sqrt{\frac{1}{n_i} + \frac{1}{n_k}} $
    • 如果置信区间包含0,则表明 μi\mu_iμk\mu_k 之间没有显著差异。
  • 常见的多重比较方法:

    • 最小显著差异法 (Fisher’s LSD):
      • 在 F 检验显著的前提下,直接进行两两 t 检验。
      • 问题: 忽略了多重性,容易犯第一类错误,过于宽松。
    • Bonferroni 修正:
      • 将显著性水平 α\alpha 分散到所有比较中,例如将 α\alpha 修正为 α=α/(比较总数)\alpha' = \alpha / (\text{比较总数})
      • 适用性: 适用于比较数量较少的情况。当比较数量多时,修正后的 α\alpha' 过小,导致难以拒绝原假设,过于保守。
    • Tukey’s HSD (Honestly Significant Difference):
      • 适用于所有成对均值的比较,可以有效控制第一类错误率。
      • 原理: 基于学生化极差分布 (studentized range distribution)。
    • Scheffé’s Method:
      • 最保守的方法,适用于所有可能的均值线性组合的比较。
      • 原理: 基于 F 分布,其临界值 tc=(r1)F(1α;r1,nTr)t_c = \sqrt{(r - 1) F(1 - \alpha; r - 1, n_T - r)}

# 对照 (Contrasts)

对照是一种特殊的线性组合,用于检验预先设定的、具有特定科学意义的均值组合。

  • 定义: 对照是均值的一种线性组合 L=ciμiL=\sum c_i\mu_i,其中系数满足 ci=0\sum c_i=0
  • 参数估计与方差:
    • L^=ciYˉi.\hat{L} = \sum c_i \bar{Y}_{i.}
    • Var^(L^)=MSE(ci2/ni)\widehat{\text{Var}}(\hat{L}) = \text{MSE} \sum (c_i^2 / n_i)
  • 对照平方和 (SSC):
    • 用于度量由特定对照引起的变异量。
    • SSC=(ciYˉi.)2(ci2/ni)SSC = \frac{\left( \sum c_i \bar{Y}_{i.} \right)^2}{\sum (c_i^2 / n_i)}
  • 多重对照:
    • 当需要同时检验 kk 个独立的对照时,可以使用 F 检验,其统计量服从 F(k,nTr)F(k,n_T-r) 分布。