相关性分析(4):什么时候不能用皮尔逊相关?——分类变量、异常值与非线性陷阱

统计

很多人一看到两个变量,就习惯性地计算皮尔逊相关系数 r,但你必须知道:

有些场景不能用皮尔逊相关;有些变量根本不适合皮尔逊相关;有些数据会让皮尔逊相关“完全失真”。

如果使用不当,不仅会得到错误的相关强度,甚至会误导模型选择、论文结论,或做出完全错误的政策判断。

本篇我们就从三个最常见的误区讲起:

(1)数据类型不适合; (2)离群点破坏r; (3)存在非线性关系但 r≈0。

【一】分类变量不能用皮尔逊相关(Nominal data 与 Ordinal data 的陷阱)

皮尔逊相关系数要求两个变量都是连续型(interval/ratio),并且可以计算平均数和标准差。如果变量是分类的,就不能直接用 r。

(1)“性别 vs 收入”不能直接算皮尔逊 r。

性别(男/女)是*名义变量(nominal),没有大小顺序,不能计算平均值,也不能用来求线性关系。

但是很多学生会不经意地把性别编码成 0/1,然后直接算相关,并误以为所得结果有实际经济含义。

实际上,这种编码只是计算机方便读取,与“量化强弱”毫无关系。正确做法应当是:

  • 用 t 检验(比较两组均值)
  • 或在回归中把性别作为虚拟变量(dummy)

(2)“幸福感 1-5 评分”不完全适合皮尔逊相关。

幸福感属于有序分类变量(ordinal),类别之间的间距并不严格相等。此时皮尔逊相关可能“差不多能用”,但更稳健的方法是使用:

斯皮尔曼等级相关(Spearman rho),因为它基于排序而非数值间距。

(3)金额、年龄、体重等连续变量才适合用皮尔逊相关。

皮尔逊相关是为连续型数据设计的,因此必须确认变量是否满足前提。

总结一句话:

名义变量不能用r,有序变量可用但不完美,连续变量才能充分发挥皮尔逊相关的意义。

【二】离群点(Outliers)会让 r 完全失真

离群点是皮尔逊相关最大的“天敌”。因为 r 依赖协方差,而协方差对极端值非常敏感。

案例:一个极端值让 r 从0.2变成0.9

假设你在研究“学习时间与考试成绩”的相关性。原本散点图几乎没有明显趋势,r≈0.2。但如果某个学生“学习时间非常长(30小时)但得了满分”,这个点会“拉直”趋势线,使 r 飙升到0.8以上。

于是你可能得出完全错误的结论:

“学习时间与成绩之间存在强正相关。”

实际上这只是一个极端值的影响。

离群点来源可能包括:

  • 数据录入错误(如把 3 写成 30)
  • 罕见事件(比如天才学生)
  • 样本结构不均衡
  • 不同群体被混合在一起

在实证研究中,检查离群点是最重要的一步,也是数据预处理的一部分。最常用的方法包括:

  • 散点图
  • 箱线图
  • 标准化残差(>3 或 <-3)

【三】非线性关系会让皮尔逊相关“看起来没有关系”

皮尔逊 r 捕捉的是线性关系,因此任何非线性结构都会导致 r≈0,即便两个变量关系强烈。

(1)经典案例:倒 U 型关系(如适度压力 vs 工作绩效)。

研究显示:

  • 压力过小,动力不足;
  • 压力过大,身心崩溃;
  • 适度压力时绩效最高。

如果你给这一数据算皮尔逊 r,通常 r≈0。但显然二者有非常清晰的关系——只是“弯的”,不是线性的。

图片

上图清晰地呈现出“压力→ 绩效”的关系,是一个典型的倒 U 型关系图(Inverted U-shaped Relationship),这类关系的相关系数 r 往往接近 0,但变量之间存在非常明确的“非线性关系”,说明 r=0 并不代表毫无关系。

(2)收入与幸福感:对数型关系。

在幸福经济学中,收入提高对幸福感的提升呈现边际递减。 这是一种典型的对数关系。若用原始数据算 r,你可能得到一个看似很弱的相关性。

正确做法是:

  • 转换变量,如 log(income)
  • 或用非线性回归、局部回归(LOESS)

图片

上图是对数型关系图(Logarithmic Relationship),收入与幸福感常呈现对数型增长:前期提升明显,但越到后期边际效应越弱,用原始数据计算 r 会低估这种关系。

(3)网络数据中的指数型关系。

如粉丝数与点赞数,往往是指数增长。直接算 r 会得到毫无意义的数字。

图片

上图是典型的指数型关系图(Exponential Relationship),网络上粉丝数与点赞数常呈指数增长,相关系数 r 无法准确捕捉“越往后涨得越快”的爆发式模式。

总结一句话:

r=0 并不意味着没有关系,而可能意味着“关系不是直线”。

【四】小结:使用皮尔逊相关前,你必须先问自己三个问题

在计算 r 之前,可以先问自己:

(1)两个变量都是连续型吗?→ 如果其中一个是分类变量,就不能用皮尔逊。 (2)数据中是否有离群点?→ 离群点会让 r 完全偏离真实关系。 (3)关系看起来是直线的吗?→ 非线性会让 r 接近 0,但不代表没关系。

如果这三个条件都满足,皮尔逊相关才真正适用。