固定效应回归的视角(Paired T-test)

Nov 20, 2023

前面的文章一直在讲"某某检验等价于回归"。这一篇要讲一个不完全等价的情况。

配对t检验(paired t-test)不等价于普通的简单线性回归。但它等价于另一种回归——带个体固定效应的回归(fixed effects regression)。这种"不完全等价"反而能帮你理解回归框架的灵活性。

配对t检验在做什么?

配对设计:每个受试者接受两种处理(或前后测量两次),你关心的是两种处理下结果是否有差异。比如:10个人吃药前和吃药后的血压变化。

配对t检验的做法是:对每个人算差值 $D_i = Y_{i,\rm after} - Y_{i,\rm before}$,然后对差值做单样本t检验,$H_0: \mu_D = 0$。

before <- c(130, 142, 128, 135, 140, 132, 138, 129, 136, 133)
after  <- c(125, 138, 126, 130, 135, 128, 134, 125, 131, 130)
t.test(after, before, paired = TRUE)
        Paired t-test

data:  after and before
t = -13.038, df = 9, p-value = 3.787e-07
alternative hypothesis: true mean difference is not equal to 0
95 percent confidence interval:
 -4.811372 -3.388628
sample estimates:
mean difference
           -4.1

为什么普通回归不行?

如果你不管配对结构,直接把前后数据当独立样本做成组t检验:

t.test(after, before, var.equal = TRUE)
        Two Sample t-test

data:  after and before
t = -2.0014, df = 18, p-value = 0.06066
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 -8.4039  0.2039
sample estimates:
mean of x mean of y
    130.2     134.3

你会发现t值和p值都跟配对检验不一样——通常配对检验的p值更小(因为它消除了个体间差异的干扰)。

同样的,如果你跑一个"处理前后"的虚拟变量回归:

$$ Y = \beta_0 + \beta_1 \cdot \rm{after} + \varepsilon $$

$\beta_1$ 的t检验等价于上面的独立样本t检验,不是配对t检验。因为这个回归把同一个人的前后两次测量当成两个独立的观测,忽略了个体间的相关性。

配对设计的核心是:同一个人的两次测量不是独立的。张三的血压无论吃药前后都可能比李四高——如果不控制这个"张三效应",个体差异就会淹没处理效应。

个体固定效应回归

解决方案:给每个人加一个单独的截距。这就是个体固定效应模型(individual fixed effects model):

$$ Y_{it} = \alpha_i + \beta \cdot \rm{after}_{it} + \varepsilon_{it} $$

其中 $\alpha_i$ 是第 $i$ 个人的固定效应(一个只属于他/她的截距项),$\rm{after}_{it}$ 是"是否为处理后测量"的虚拟变量,$\beta$ 是我们关心的处理效应。

现在有 $n$ 个人,每个人测了两次($T=2$)。模型有 $n$ 个 $\alpha_i$ 和一个 $\beta$,共 $n+1$ 个参数——看起来比观测数 $2n$ 还多?其实用组内差分(within transformation)就可以消掉 $\alpha_i$。

对每个人取两次测量的差值:

$$ \begin{aligned} Y_{i,\rm after} - Y_{i,\rm before} &= (\alpha_i + \beta \cdot 1 + \varepsilon_{i,\rm after}) - (\alpha_i + \beta \cdot 0 + \varepsilon_{i,\rm before}) \\ &= \beta + (\varepsilon_{i,\rm after} - \varepsilon_{i,\rm before}) \end{aligned} $$

$\alpha_i$ 被消掉了。对差值做回归(其实就是求差值的均值),$\hat\beta = \overline{D}$,恰好是差值的样本均值。对 $\beta$ 的t检验就是配对t检验。

所以:

配对t检验 = 对差值做单样本t检验 = $T=2$ 时的个体固定效应回归

三种写法,同一个结果。

一个数值验证

before <- c(130, 142, 128, 135, 140, 132, 138, 129, 136, 133)
after  <- c(125, 138, 126, 130, 135, 128, 134, 125, 131, 130)
n <- length(before)

Y <- c(before, after)
after_var <- rep(c(0, 1), each = n)
id <- factor(rep(1:n, 2))
summary(lm(Y ~ after_var + id))
Call:
lm(formula = Y ~ after_var + id)

Residuals:
   Min     1Q Median     3Q    Max
 -1.05  -0.45   0.00   0.45   1.05

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept) 129.5500     0.5215 248.426  < 2e-16 ***
after_var    -4.1000     0.3145 -13.038 3.79e-07 ***
id2          12.5000     0.7032  17.777 2.56e-08 ***
id3          -0.5000     0.7032  -0.711 0.495056
id4           5.0000     0.7032   7.111 5.60e-05 ***
id5          10.0000     0.7032  14.221 1.79e-07 ***
id6           2.5000     0.7032   3.555 0.006164 **
id7           8.5000     0.7032  12.088 7.23e-07 ***
id8          -0.5000     0.7032  -0.711 0.495056
id9           6.0000     0.7032   8.533 1.32e-05 ***
id10          4.0000     0.7032   5.689 0.000299 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.7032 on 9 degrees of freedom
Multiple R-squared:  0.9904,    Adjusted R-squared:  0.9797
F-statistic: 92.49 on 10 and 9 DF,  p-value: 7.791e-08

after_var 系数的 t 值和 p 值与配对t检验完全一致。

为什么这件事重要?

因为它展示了回归框架的灵活性

如果配对t检验等价于普通回归,那我们只能说"哦,又是一个特例"。但配对t检验不等价于普通回归——它需要固定效应。这说明:不是所有统计方法都天然地装在简单回归的壳子里,但几乎所有方法都可以通过扩展回归模型(加固定效应、加随机效应、加协变量、改变误差结构……)来等价表达。

t检验是回归。ANOVA是回归。配对t检验是回归(加个体固定效应)。Pearson相关是回归(标准化后)。甚至很多看起来跟回归毫无关系的非参数方法,也可以通过特定的变换和权重矩阵纳入回归框架。

统一不是把复杂问题简化,而是让你看清:复杂的表面之下,数学结构惊人地一致。

从配对到更一般

个体固定效应模型不只适用于 $T=2$ 的情形。如果每个人测量了多次($T > 2$),固定效应回归依然有效——它可以看成是"每个人的时间序列减去自己的均值"之后再跑回归。在面板数据(panel data)分析中,这是最基本的技术之一。

所以配对t检验不是终点,是一扇通向更广阔方法世界的门。

这扇门用传统t检验的框架是打不开的——因为你只能算差值,只能做 $T=2$。但回归框架天然支持任意 $T$、任意协变量、任意误差结构。

写到这里我突然意识到一件事:这可能就是为什么有些老师不爱在基础课上讲"回归统一一切"——因为你一旦说了,学生就会追问"那配对t检验呢?那非参数检验呢?“然后你就得解释固定效应、随机效应、广义线性模型……这一展开,一学期的课都不够用。

所以基础课选择"不讲"是有道理的。但作为学完了基础课的人,回头补上这一块拼图,感觉还是挺好的。