回归分析第11讲: 回归分析前,到底要不要把变量标准化?

统计

这是一个很容易让人困惑的问题,我们先说结论:

  • 回归分析中,标准化不是必须的。
  • 但在某些特定场景下,它非常有用,甚至是必须的。

更准确地说:

“要不要标准化”,不是由模型决定,而是由你的研究目的决定。

这一讲我们聊一下变量标准化的三个问题:什么时候不用、什么时候要、什么时候必须要。

【一】为什么说标准化不是必须的?

因为标准化(z-score)只是把数据转成“标准差单位”,即:

图片

它本质是缩放操作,不会改变变量之间的真实关系。

所以,无论对变量是不是进行了标准化处理:

  • 回归系数方向(正负) → 不变
  • 系数显著性(p 值)→ 不变
  • R²、F 检验等 → 基本不变

因此:

标准化不会让你的回归“更正确”,也不会让模型“更显著”。

它唯一改变的,是系数的单位和可比性。

【二】什么时候不需要标准化?(大多数经济学论文都属于这一类)

📌 当你需要解释“经济含义”时,不要标准化。

比如:

  • 工资每增加 1 元,消费会增加多少?
  • 利率上升 1 个百分点,会影响投资多少?
  • 数字化指数增加 1 单位,企业利润是否提高?

这些问题要求你保留原始单位,否则解释就失去意义。

所以:

做普通 OLS 回归、做政策含义、解释经济意义时,不要标准化。

这就是为什么你看到大量顶刊论文都没有用标准化。

【三】什么时候建议标准化?(适合比较影响力)

📌 当你想比较不同变量的影响强弱时,标准化非常有用。

例如:研究什么影响幸福感?

三个变量:

  • 收入(单位:元)
  • 教育(单位:年)
  • 社交频率(1–7分)

三个单位不同,系数大小无法直接比较。

如果你想回答:

“收入、教育、社交,哪个对幸福感影响更大?”

那么必须标准化,否则尺度差异会造成假象:

  • 收入数值最大 → 系数往往更大
  • 社交频率数值小 → 系数会更小
  • 看起来好像收入最重要,但那只是单位不同!

标准化后,它们都以“标准差”为单位:
→ 系数终于可比了。

【四】什么时候必须标准化?

📌 使用带惩罚项的模型(Lasso、Ridge、Elastic Net)时,必须标准化。

例如:用 Lasso 做变量筛选

Lasso 会根据“系数大小”惩罚变量——
但不同变量的尺度本来就不同!

  • 收入(0–300000)
  • 教育(6–18)

如果你不标准化:

→ Lasso 会认为“收入变量的系数太大”,把它过度惩罚掉
→ 结果出现错误的变量选择

这不是研究问题,而是标准化的问题。

所以:

只要用机器学习类的回归,几乎都要标准化。

【五】总结

  • **OLS 回归中,标准化不是必须的。
  • **需要解释经济含义时,不需要标准化。
  • 需要比较变量重要性或使用 Lasso 时,必须标准化。

可以通过下面表格快速判断

研究目的 要不要标准化? 原因
解释经济含义(如工资、利率、价格) ❌ 不要 单位必须保留
做普通 OLS 回归 ❌ 可以不做 不影响显著性或模型结构
比较变量影响力强弱 ✔️ 建议做 单位不同无法比较
使用 Lasso / Ridge / Elastic Net ✔️ 必须 惩罚项对尺度敏感
变量尺度差异极大导致数值问题 ✔️ 可做 让算法更稳定

最后,提醒一句:

变量标准化后,回归系数和残差的“数值”确实会变化,那只是因为它们跟着变量一起换了单位;但注意,它们本身并没有被额外标准化。

更重要的是:

F 值、t 值、p 值、R² 等统计显著性指标完全不会改变,模型的结论也不会变。