跳到主要内容

Pearson 相关

一、直观理解:两条数值轴上的“同步涨跌”有多强​

Pearson 相关系数 rr 衡量两个连续变量之间线性关系的强度与方向。

  • r>0r>0:一个变大时,另一个倾向于变大;
  • r<0r<0:一个变大时,另一个倾向于变小;
  • r≈0r\approx 0:没有明显线性同步(但可能仍有非线性关系)。

几何上,rr 是将两变量标准化后,其夹角余弦的样本版本;也等于两变量中心化向量的余弦相似度。

重要限制:Pearson 只抓线性。若 Y=X2Y=X^2 在对称区间上,rr 可能接近 0,但关系很强——此时应看散点图或改用 Spearman 等。

二、适用场景与优缺点​

类型说明
适用场景两连续变量的线性关联;回归前的探索;主成分/因子分析前的相关结构预览;信度分析中的某些指标。
核心优点解释简单;与线性回归斜率、R² 紧密联系;推断理论成熟。
局限与缺点对异常值极敏感;非线性关系可被低估;相关≠因果;边缘分布偏态时推断可能不稳。

使用前:

  1. 画散点图,确认大致线性、有无分组或异常点;
  2. 检查是否需分层(Simpson 悖论);
  3. 变量量纲不影响 rr(因其标准化),但测量误差会衰减相关;
  4. 若明显单调非线性,优先 Spearman。

三、核心原理​

样本 Pearson 相关:

r=∑i=1n(xi−xˉ)(yi−yˉ)∑i=1n(xi−xˉ)2∑i=1n(yi−yˉ)2=sxysxsyr=\frac{\sum_{i=1}^{n}(x_i-\bar x)(y_i-\bar y)} {\sqrt{\sum_{i=1}^{n}(x_i-\bar x)^2\sum_{i=1}^{n}(y_i-\bar y)^2}} =\frac{s_{xy}}{s_x s_y}

性质:

  • r∈[−1,1]r\in[-1,1];
  • 对 X,YX,Y 做正线性变换不变(除方向由斜率符号决定);
  • 与简单回归:Y=β0+β1X+εY=\beta_0+\beta_1 X+\varepsilon 中,r=sign(β^1)R2r=\mathrm{sign}(\hat\beta_1)\sqrt{R^2}(单变量时)。

检验 H0:ρ=0H_0:\rho=0(总体相关为 0)时,若双正态,

t=rn−21−r2∼tn−2t=r\sqrt{\frac{n-2}{1-r^2}}\sim t_{n-2}

置信区间常用 Fisher z 变换:

z=12log⁡1+r1−r,SE=1n−3z=\tfrac12\log\frac{1+r}{1-r},\quad \mathrm{SE}=\frac{1}{\sqrt{n-3}}

再反变换回 rr 尺度。

四、关键决策​

1. 先图后数​

无散点图的相关系数在建模中不可接受。看清是否线性、是否异方差、是否两团点混合。

2. 异常值​

单个极端点可把 rr 从 0.2 拉到 0.8。应报告剔除前后的 rr,或改用 Spearman/稳健相关。

3. 相关矩阵用于后续模型​

高 ∣r∣|r| 提示共线性,但决定是否删除变量要结合 VIF 与专业意义,不能只因相关高就删。

4. 多重相关​

一次算很多对相关会通胀假阳性,需 FDR 校正或预注册关键对。

五、MATLAB 示例​

rng(5);
x = 20 + 8*randn(60,1);
y = 2.5*x + 15 + 10*randn(60,1); % 线性 + 噪声
y2 = (x-20).^2 + 5*randn(60,1); % 非线性

[r, p] = corr(x, y, "Type", "Pearson");
fprintf("线性数据: r=%.3f, p=%.4g\n", r, p);

[r_nl, p_nl] = corr(x, y2, "Type", "Pearson");
[rs, ps] = corr(x, y2, "Type", "Spearman");
fprintf("非线性: Pearson r=%.3f (p=%.3g), Spearman=%.3f (p=%.3g)\n", ...
r_nl, p_nl, rs, ps);

% Fisher 区间
n = numel(x);
z = atanh(r);
se = 1/sqrt(n-3);
zci = z + [-1 1]*norminv(0.975)*se;
rci = tanh(zci);
fprintf("r 的近似 95%% CI: [%.3f, %.3f]\n", rci(1), rci(2));

% 异常值影响
x_out = [x; 60]; y_out = [y; 40];
r_out = corr(x_out, y_out);
fprintf("加入1个异常点后 r=%.3f(原%.3f)\n", r_out, r);

figure;
subplot(1,2,1); scatter(x,y,20,"filled"); lsline; title(sprintf("线性 r=%.2f", r));
subplot(1,2,2); scatter(x,y2,20,"filled"); title(sprintf("非线性 Pearson=%.2f", r_nl));

六、如何解释结果​

  1. 报告 nn、rr、p 值、置信区间;
  2. 用散点图说明线性形态;
  3. 用文字说明方向与强度(弱/中/强需结合领域,避免教条阈值);
  4. 讨论异常值与可能的混杂、分层;
  5. 明确不做因果宣称。

强度的经验口令(仅供探索):|r|&lt;0.3 弱,0.3∼0.70.3\sim0.7 中等,&gt;0.7 强——但在物理学与社会科学中标准完全不同。

七、常见误区​

1. r=0r=0 当作“没有任何关系”​

可能只是非线性或非单调。

2. 高相关当作因果​

两者可能共同由第三变量驱动。

3. 把不同子群混在一起算相关​

可能出现生态谬误或 Simpson 悖论。

4. 不报告 nn 与 CI​

r=0.5r=0.5 在 n=8n=8 与 n=800n=800 意义完全不同。

5. 对有序等级硬算 Pearson​

更合适 Spearman/Kendall,或多维项目反应用多水平模型。

八、小结​

Pearson 相关的核心是:

标准化后的线性同步程度,取值 [−1,1][-1,1]。

它是探索连续变量关系的第一选择,但必须配合散点图、异常值检查与区间估计。若关系呈单调非线性,或数据为等级,应转向 Spearman 或 Kendall。