行莫
行莫
发布于 2025-11-17 / 3 阅读
0
0

统计学核心概念详解

统计学核心概念详解

引言:用数字读懂世界

想象一下,你是一位老师,刚刚批改完一次考试:

"这次考试的平均分是多少?"
"最高分和最低分差距大吗?"
"大部分学生的成绩集中在哪个分数段?"
"成绩分布是偏左还是偏右?"

这些问题都需要用统计学来回答。统计学就像是一把"数字显微镜",帮助我们看清数据背后的规律和特征。

统计学不是枯燥的数字游戏,而是理解世界的工具。从日常生活的"平均工资"到人工智能的"特征工程",统计学无处不在。


第一部分:集中趋势指标

1. 均值(Mean / Average)

直观理解

比喻1:平均分配

想象5个朋友一起吃饭,总共花了250元:

  • 平均每人:250 ÷ 5 = 50元

均值就是把总数平均分配给每个人

比喻2:平衡点

想象一个跷跷板,均值就是让跷跷板平衡的那个点。

数学定义

算术均值

对于 n 个数据:x₁, x₂, ..., xₙ

均值 = (x₁ + x₂ + ... + xₙ) / n

或写成:
x̄ = (1/n) × Σxᵢ

计算示例

例子1:考试成绩

成绩:[85, 90, 78, 92, 88, 85, 90]

均值 = (85 + 90 + 78 + 92 + 88 + 85 + 90) / 7
     = 608 / 7
     = 86.86

例子2:加权均值

当不同数据的重要性不同时,使用加权均值:

课程成绩:
数学(4学分):85分
英语(3学分):90分
体育(1学分):95分

加权均值 = (85×4 + 90×3 + 95×1) / (4+3+1)
        = (340 + 270 + 95) / 8
        = 705 / 8
        = 88.125

均值的性质

  1. 敏感性:均值对极端值很敏感

    数据:[10, 20, 30, 40, 50]  → 均值 = 30
    数据:[10, 20, 30, 40, 1000] → 均值 = 220(被1000拉高)
    
  2. 代数性质

    如果所有数据都加上常数 c:
    新均值 = 原均值 + c
    
    如果所有数据都乘以常数 k:
    新均值 = 原均值 × k
    

实际应用场景

  • 经济:人均GDP、平均工资
  • 教育:班级平均分、学校平均录取分数
  • 商业:平均销售额、平均客单价
  • AI:特征归一化、损失函数计算

2. 中位数(Median)

直观理解

比喻:排队找中间

想象一群人按身高排队:

  • 中位数就是站在最中间那个人的身高
  • 如果人数是偶数,中位数是中间两个人的平均身高

关键特点:中位数不受极端值影响。

数学定义

中位数:将数据从小到大排序后,位于中间位置的数。

如果 n 是奇数:
中位数 = x₍ₙ₊₁₎/₂

如果 n 是偶数:
中位数 = (x₍ₙ/₂₎ + x₍ₙ/₂₊₁₎) / 2

计算示例

例子1:奇数个数据

成绩:[85, 90, 78, 92, 88]

排序:[78, 85, 88, 90, 92]
              ↑
           中位数

中位数 = 88

例子2:偶数个数据

成绩:[85, 90, 78, 92, 88, 85]

排序:[78, 85, 85, 88, 90, 92]
              ↑    ↑
           中间两个数

中位数 = (85 + 88) / 2 = 86.5

例子3:极端值的影响

数据1:[10, 20, 30, 40, 50]
       均值 = 30,中位数 = 30

数据2:[10, 20, 30, 40, 1000]
       均值 = 220,中位数 = 30  ← 不受极端值影响

中位数的优势

  1. 稳健性:不受极端值(异常值)影响
  2. 适用性:适合偏态分布的数据
  3. 直观性:代表"典型值"

实际应用场景

  • 收入统计:中位数收入比平均收入更能反映真实情况
  • 房价分析:中位数房价不受豪宅影响
  • 性能测试:中位数响应时间比平均值更稳定
  • AI:鲁棒性评估、异常检测

3. 众数(Mode)

直观理解

比喻:投票选举

想象一次投票:

  • 众数就是得票最多的那个选项

关键特点:众数是出现频率最高的值。

数学定义

众数:数据中出现次数最多的值。

众数 = argmax(频率)

计算示例

例子1:离散数据

成绩:[85, 90, 78, 92, 88, 85, 90, 85]

统计频率:
85 出现 3 次
90 出现 2 次
78 出现 1 次
92 出现 1 次
88 出现 1 次

众数 = 85(出现次数最多)

例子2:连续数据(分组)

对于连续数据,需要先分组:

身高数据:[165, 170, 168, 172, 170, 175, 168, 170]

分组(每5cm一组):
165-170: 165, 168, 168, 170, 170, 170  → 6人
170-175: 172, 175  → 2人

众数组 = 165-170(人数最多)

例子3:多众数

数据:[1, 2, 2, 3, 3, 4]

2 和 3 都出现 2 次
→ 双众数:2 和 3

众数的特点

  1. 适用性:适合分类数据和离散数据
  2. 不受极端值影响
  3. 可能不存在:如果所有值出现次数相同
  4. 可能多个:可能有多个众数

实际应用场景

  • 市场调研:最受欢迎的产品
  • 服装设计:最常见的尺码
  • 用户行为:最常访问的页面
  • AI:分类问题中的主要类别

4. 三个指标的比较

对称分布

数据:[1, 2, 3, 4, 5]
均值 = 3
中位数 = 3
众数 = 无(或所有值)

三个指标接近或相等

右偏分布(正偏)

数据:[1, 2, 3, 4, 100]
均值 = 22(被100拉高)
中位数 = 3
众数 = 无

均值 > 中位数 > 众数

左偏分布(负偏)

数据:[1, 2, 3, 4, 5]
如果大部分数据集中在右侧:
均值 < 中位数 < 众数

记忆口诀

  • 右偏:均值被拉向右(大值),均值 > 中位数
  • 左偏:均值被拉向左(小值),均值 < 中位数

第二部分:离散程度指标

1. 极差(Range)

直观理解

比喻:温度计

想象一天的温度:

  • 最低温度:5°C
  • 最高温度:25°C
  • 极差 = 25 - 5 = 20°C

极差就是最大值和最小值的差距

数学定义

极差

极差 = 最大值 - 最小值
Range = max(xᵢ) - min(xᵢ)

计算示例

例子1:考试成绩

成绩:[85, 90, 78, 92, 88, 85, 90]

最大值 = 92
最小值 = 78
极差 = 92 - 78 = 14

例子2:极端值的影响

数据1:[10, 20, 30, 40, 50]
       极差 = 50 - 10 = 40

数据2:[10, 20, 30, 40, 1000]
       极差 = 1000 - 10 = 990  ← 受极端值影响很大

极差的特点

  1. 简单直观:最容易理解
  2. 易受极端值影响:一个异常值就能大幅改变极差
  3. 信息量少:只考虑最大值和最小值,忽略中间数据

实际应用场景

  • 质量控制:产品尺寸的允许范围
  • 天气预报:日温差
  • 股票分析:最高价和最低价的差距
  • AI:数据范围检查、异常值检测

2. 四分位距(IQR, Interquartile Range)

直观理解

比喻:去掉头尾看中间

想象100个学生按成绩排队:

  • Q1(第一四分位数):第25名的成绩
  • Q2(第二四分位数):第50名的成绩(就是中位数)
  • Q3(第三四分位数):第75名的成绩
  • IQR = Q3 - Q1:中间50%学生的成绩范围

IQR衡量中间50%数据的离散程度

数学定义

四分位数

  • Q1:25%的数据小于它
  • Q2:50%的数据小于它(中位数)
  • Q3:75%的数据小于它

四分位距

IQR = Q3 - Q1

计算示例

例子1:计算四分位数

数据:[10, 15, 20, 25, 30, 35, 40, 45, 50]

排序:[10, 15, 20, 25, 30, 35, 40, 45, 50]
      Q1=20  Q2=30  Q3=40

IQR = Q3 - Q1 = 40 - 20 = 20

详细计算步骤

步骤1:排序数据
[10, 15, 20, 25, 30, 35, 40, 45, 50]

步骤2:找中位数(Q2)
n = 9,中位数位置 = (9+1)/2 = 5
Q2 = 30

步骤3:找Q1(下半部分的中位数)
下半部分:[10, 15, 20, 25]
Q1 = (15 + 20) / 2 = 17.5

步骤4:找Q3(上半部分的中位数)
上半部分:[35, 40, 45, 50]
Q3 = (40 + 45) / 2 = 42.5

步骤5:计算IQR
IQR = Q3 - Q1 = 42.5 - 17.5 = 25

例子2:使用IQR识别异常值

异常值判断规则:
- 下界 = Q1 - 1.5 × IQR
- 上界 = Q3 + 1.5 × IQR
- 超出上下界的数据视为异常值

数据:[10, 15, 20, 25, 30, 35, 40, 45, 50, 100]

Q1 = 17.5, Q3 = 42.5, IQR = 25

下界 = 17.5 - 1.5 × 25 = -20
上界 = 42.5 + 1.5 × 25 = 80

100 > 80,所以100是异常值

IQR的优势

  1. 稳健性:不受极端值影响
  2. 信息量:关注中间50%的数据
  3. 异常检测:可以识别异常值

实际应用场景

  • 箱线图:用IQR绘制箱线图
  • 异常检测:识别数据中的异常值
  • 稳健统计:在存在异常值时的离散程度度量
  • AI:数据清洗、特征工程

3. 方差(Variance)

直观理解

比喻1:偏离中心的程度

想象一群学生围绕老师站成一圈:

  • 方差衡量学生们距离老师的平均距离的平方
  • 方差大 = 学生们分散得很开
  • 方差小 = 学生们聚集在一起

比喻2:稳定性

方差就像衡量数据的"稳定性":

  • 低方差 = 数据稳定,变化小
  • 高方差 = 数据不稳定,变化大

数学定义

总体方差(Population Variance):

σ² = (1/N) × Σ(xᵢ - μ)²

其中:
- N 是总体大小
- μ 是总体均值
- xᵢ 是第 i 个数据点

样本方差(Sample Variance):

s² = (1/(n-1)) × Σ(xᵢ - x̄)²

其中:
- n 是样本大小
- x̄ 是样本均值
- 除以 (n-1) 而不是 n(贝塞尔校正)

为什么除以 (n-1)?

样本方差除以 (n-1) 是为了得到总体方差的无偏估计:

  • 样本均值 x̄ 是从样本中计算出来的
  • 这导致样本方差会系统性低估总体方差
  • 除以 (n-1) 可以修正这个偏差

计算示例

例子1:计算样本方差

数据:[2, 4, 6, 8, 10]

步骤1:计算均值
x̄ = (2 + 4 + 6 + 8 + 10) / 5 = 6

步骤2:计算每个数据与均值的差
(2-6) = -4
(4-6) = -2
(6-6) = 0
(8-6) = 2
(10-6) = 4

步骤3:计算差的平方
(-4)² = 16
(-2)² = 4
0² = 0
2² = 4
4² = 16

步骤4:求和并除以 (n-1)
s² = (16 + 4 + 0 + 4 + 16) / (5-1)
   = 40 / 4
   = 10

例子2:方差的意义

数据1:[5, 5, 5, 5, 5]
均值 = 5
方差 = 0(完全没有变化)

数据2:[1, 3, 5, 7, 9]
均值 = 5
方差 = 10(有一定变化)

数据3:[0, 0, 5, 10, 10]
均值 = 5
方差 = 20(变化很大)

方差的性质

  1. 非负性:方差 ≥ 0,且方差 = 0 当且仅当所有数据相等
  2. 单位:方差的单位是原数据单位的平方
  3. 敏感性:对极端值敏感

实际应用场景

  • 质量控制:产品尺寸的稳定性
  • 投资分析:收益率的波动性
  • 实验设计:评估实验结果的可靠性
  • AI:特征选择、正则化、损失函数

4. 标准差(Standard Deviation)

直观理解

比喻:回到原始单位

方差是"距离的平方",标准差是"距离":

  • 标准差 = √方差
  • 标准差和原始数据有相同的单位,更容易理解

比喻2:典型偏差

标准差表示"典型情况下,数据偏离均值多少"。

数学定义

总体标准差

σ = √σ² = √[(1/N) × Σ(xᵢ - μ)²]

样本标准差

s = √s² = √[(1/(n-1)) × Σ(xᵢ - x̄)²]

计算示例

例子1:从方差计算标准差

数据:[2, 4, 6, 8, 10]

前面计算得到:方差 s² = 10

标准差 s = √10 ≈ 3.16

例子2:标准差的意义

数据:[5, 5, 5, 5, 5]
均值 = 5,标准差 = 0
→ 所有数据都等于均值

数据:[1, 3, 5, 7, 9]
均值 = 5,标准差 ≈ 3.16
→ 典型情况下,数据偏离均值约3.16

数据:[0, 0, 5, 10, 10]
均值 = 5,标准差 ≈ 4.47
→ 数据变化更大

例子3:经验法则(68-95-99.7规则)

对于正态分布:

  • 68% 的数据在均值 ± 1个标准差范围内
  • 95% 的数据在均值 ± 2个标准差范围内
  • 99.7% 的数据在均值 ± 3个标准差范围内
假设:身高均值 = 170cm,标准差 = 10cm

68%的人身高在:170 ± 10 = [160, 180]cm
95%的人身高在:170 ± 20 = [150, 190]cm
99.7%的人身高在:170 ± 30 = [140, 200]cm

标准差 vs 方差

特性方差标准差
单位原单位的平方与原单位相同
数值大小较大较小
解释性较难理解容易理解
计算先计算方差方差的平方根

实际应用场景

  • 统计推断:置信区间、假设检验
  • 风险评估:金融风险度量
  • 质量控制:6σ质量管理
  • AI:特征缩放、归一化、正则化

第三部分:分布形状指标

1. 偏度(Skewness)

直观理解

比喻:跷跷板

想象一个跷跷板:

  • 对称分布:两边平衡,偏度 = 0
  • 右偏(正偏):右边重,尾巴向右延伸,偏度 > 0
  • 左偏(负偏):左边重,尾巴向左延伸,偏度 < 0

偏度衡量分布的对称性

数学定义

偏度系数

Skewness = (1/n) × Σ[(xᵢ - x̄) / s]³

或

Skewness = E[(X - μ)³] / σ³

解释

  • 偏度 = 0:对称分布(如正态分布)
  • 偏度 > 0:右偏(正偏),尾巴向右
  • 偏度 < 0:左偏(负偏),尾巴向左

计算示例

例子1:计算偏度

数据:[1, 2, 3, 4, 5, 6, 7, 8, 9, 100]

均值 x̄ = 14.3
标准差 s ≈ 28.5

标准化数据:zᵢ = (xᵢ - x̄) / s
z = [-0.47, -0.43, -0.40, -0.36, -0.40, -0.29, -0.25, -0.22, -0.18, 3.01]

计算 z³:
z³ = [-0.10, -0.08, -0.06, -0.05, -0.06, -0.02, -0.02, -0.01, -0.01, 27.27]

偏度 = 平均值(z³) ≈ 2.69 > 0(右偏)

例子2:不同偏度的分布

对称分布(偏度 ≈ 0):
[1, 2, 3, 4, 5, 6, 7, 8, 9]
数据均匀分布在均值两侧

右偏分布(偏度 > 0):
[1, 2, 3, 4, 5, 6, 7, 8, 100]
大部分数据在左侧,少数大值在右侧

左偏分布(偏度 < 0):
[1, 2, 3, 4, 5, 6, 7, 8, 9]
如果大部分数据在右侧,少数小值在左侧

偏度的判断方法

方法1:均值和中位数的关系

右偏:均值 > 中位数
左偏:均值 < 中位数
对称:均值 ≈ 中位数

方法2:观察分布图

右偏:尾巴向右延伸
左偏:尾巴向左延伸

实际应用场景

  • 收入分布:通常右偏(少数高收入者)
  • 考试分数:可能左偏(大部分学生成绩较好)
  • 数据预处理:识别需要转换的数据
  • AI:特征工程、数据变换(对数变换处理右偏)

2. 峰度(Kurtosis)

直观理解

比喻:山峰的形状

想象一座山:

  • 高峰度(尖峰):山顶很尖,数据集中在中心,但尾部有极端值
  • 低峰度(平峰):山顶平缓,数据分布均匀
  • 正态分布:峰度 = 3(作为基准)

峰度衡量分布的"尖锐程度"和"尾部厚度"

数学定义

峰度系数

Kurtosis = (1/n) × Σ[(xᵢ - x̄) / s]⁴

或

Kurtosis = E[(X - μ)⁴] / σ⁴

超额峰度(Excess Kurtosis):

Excess Kurtosis = Kurtosis - 3

解释

  • 峰度 = 3(超额峰度 = 0):正态分布
  • 峰度 > 3(超额峰度 > 0):尖峰分布(Leptokurtic),尾部厚
  • 峰度 < 3(超额峰度 < 0):平峰分布(Platykurtic),尾部薄

计算示例

例子1:不同峰度的分布

正态分布(峰度 = 3):
数据均匀分布在均值周围,尾部适中

尖峰分布(峰度 > 3):
数据高度集中在中心,但尾部有极端值
例如:金融收益率(大部分时间稳定,偶尔大幅波动)

平峰分布(峰度 < 3):
数据分布较均匀,没有明显的集中
例如:均匀分布

例子2:峰度的意义

尖峰分布的特点:
- 数据集中在中心(方差小)
- 但尾部有极端值(方差大)
- 这种"矛盾"导致峰度高

实际例子:股票收益率
- 大部分时间:小幅波动(集中在中心)
- 偶尔:大幅波动(极端值)
- 结果:峰度 > 3

峰度的类型

  1. 尖峰(Leptokurtic):峰度 > 3

    • 数据集中在中心
    • 尾部较厚(有极端值)
    • 例子:金融数据、学生成绩(大部分中等,少数极端)
  2. 正态(Mesokurtic):峰度 = 3

    • 标准正态分布
    • 作为比较基准
  3. 平峰(Platykurtic):峰度 < 3

    • 数据分布较均匀
    • 尾部较薄
    • 例子:均匀分布

实际应用场景

  • 金融分析:识别极端风险事件
  • 质量控制:检测异常值
  • 数据预处理:识别需要处理的数据分布
  • AI:异常检测、风险评估

第四部分:变量关系指标

1. 协方差(Covariance)

直观理解

比喻1:同步变化

想象两个人的步调:

  • 正协方差:一个人快,另一个人也快;一个人慢,另一个人也慢(同步)
  • 负协方差:一个人快,另一个人慢;一个人慢,另一个人快(反向)
  • 零协方差:一个人的快慢与另一个人无关(独立)

协方差衡量两个变量如何一起变化

比喻2:相关性

协方差就像衡量两个变量的"相关性":

  • 正协方差 = 正相关
  • 负协方差 = 负相关
  • 零协方差 = 不相关

数学定义

总体协方差

Cov(X, Y) = E[(X - μₓ)(Y - μᵧ)]
         = (1/N) × Σ(xᵢ - μₓ)(yᵢ - μᵧ)

样本协方差

sₓᵧ = (1/(n-1)) × Σ(xᵢ - x̄)(yᵢ - ȳ)

计算步骤

  1. 计算 X 的均值 x̄ 和 Y 的均值 ȳ
  2. 对每个数据点,计算 (xᵢ - x̄) 和 (yᵢ - ȳ)
  3. 相乘:(xᵢ - x̄)(yᵢ - ȳ)
  4. 求和并除以 (n-1)

计算示例

例子1:计算协方差

X(身高,cm):[160, 165, 170, 175, 180]
Y(体重,kg):[50, 55, 60, 65, 70]

步骤1:计算均值
x̄ = (160 + 165 + 170 + 175 + 180) / 5 = 170
ȳ = (50 + 55 + 60 + 65 + 70) / 5 = 60

步骤2:计算偏差
xᵢ - x̄: [-10, -5, 0, 5, 10]
yᵢ - ȳ: [-10, -5, 0, 5, 10]

步骤3:计算乘积
(xᵢ - x̄)(yᵢ - ȳ): [100, 25, 0, 25, 100]

步骤4:求和并除以 (n-1)
sₓᵧ = (100 + 25 + 0 + 25 + 100) / (5-1)
    = 250 / 4
    = 62.5

协方差 = 62.5(正数,表示正相关)

例子2:不同关系的协方差

正相关(正协方差):
X: [1, 2, 3, 4, 5]
Y: [2, 4, 6, 8, 10]
→ X增加,Y也增加
→ 协方差 > 0

负相关(负协方差):
X: [1, 2, 3, 4, 5]
Y: [10, 8, 6, 4, 2]
→ X增加,Y减少
→ 协方差 < 0

不相关(协方差 ≈ 0):
X: [1, 2, 3, 4, 5]
Y: [5, 2, 4, 1, 3]
→ X和Y的变化没有规律
→ 协方差 ≈ 0

协方差的性质

  1. 对称性:Cov(X, Y) = Cov(Y, X)
  2. 自协方差:Cov(X, X) = Var(X)(协方差是方差的推广)
  3. 线性性
    Cov(aX + b, cY + d) = ac × Cov(X, Y)
    
  4. 单位依赖:协方差的单位是 X 和 Y 单位的乘积,难以比较

协方差的局限性

问题:协方差受单位影响,难以比较不同变量对的关系强度。

例子:
X(身高,米):[1.6, 1.65, 1.7, 1.75, 1.8]
Y(体重,克):[50000, 55000, 60000, 65000, 70000]

如果改用不同单位:
X(身高,厘米):[160, 165, 170, 175, 180]
Y(体重,千克):[50, 55, 60, 65, 70]

协方差会完全不同!

解决方案:使用相关系数(标准化后的协方差)。

实际应用场景

  • 金融:资产组合的风险分析
  • 数据分析:特征之间的关系
  • 机器学习:特征选择、降维
  • AI:协方差矩阵、主成分分析(PCA)

2. 相关系数(Correlation Coefficient)

直观理解

比喻:标准化的协方差

相关系数就是"标准化后的协方差":

  • 消除了单位的影响
  • 取值范围:-1 到 1
  • 更容易解释和比较

比喻2:关系的强度

  • r = 1:完全正相关(一条向上的直线)
  • r = -1:完全负相关(一条向下的直线)
  • r = 0:不相关(散点图无规律)
  • |r| 接近 1:强相关
  • |r| 接近 0:弱相关

数学定义

皮尔逊相关系数(Pearson Correlation Coefficient):

r = Cov(X, Y) / (σₓ × σᵧ)

或

r = Σ[(xᵢ - x̄)(yᵢ - ȳ)] / √[Σ(xᵢ - x̄)² × Σ(yᵢ - ȳ)²]

取值范围:-1 ≤ r ≤ 1

解释

  • r = 1:完全正相关
  • r = 0.7-0.9:强正相关
  • r = 0.3-0.7:中等正相关
  • r = 0-0.3:弱相关
  • r = 0:不相关
  • r < 0:负相关(类似正相关的解释)

计算示例

例子1:计算相关系数

X(身高,cm):[160, 165, 170, 175, 180]
Y(体重,kg):[50, 55, 60, 65, 70]

前面计算得到:
sₓᵧ = 62.5(协方差)

计算标准差:
sₓ = √[(160-170)² + (165-170)² + ... + (180-170)²] / 4
   = √[100 + 25 + 0 + 25 + 100] / 4
   = √62.5 ≈ 7.91

sᵧ = √[(50-60)² + (55-60)² + ... + (70-60)²] / 4
   = √[100 + 25 + 0 + 25 + 100] / 4
   = √62.5 ≈ 7.91

相关系数:
r = sₓᵧ / (sₓ × sᵧ)
  = 62.5 / (7.91 × 7.91)
  = 62.5 / 62.5
  = 1.0

完全正相关!

例子2:不同相关强度

强正相关(r ≈ 0.9):
X: [1, 2, 3, 4, 5]
Y: [2.1, 3.9, 6.1, 7.9, 10.1]
→ 基本呈直线关系,但有少量误差

中等正相关(r ≈ 0.6):
X: [1, 2, 3, 4, 5]
Y: [2, 5, 4, 8, 6]
→ 有正相关趋势,但散点较分散

弱相关(r ≈ 0.2):
X: [1, 2, 3, 4, 5]
Y: [3, 1, 5, 2, 4]
→ 相关性很弱,几乎看不出规律

负相关(r ≈ -0.8):
X: [1, 2, 3, 4, 5]
Y: [10, 8, 6, 4, 2]
→ 明显的负相关关系

相关系数的性质

  1. 对称性:r(X, Y) = r(Y, X)
  2. 尺度不变性:改变单位不影响相关系数
  3. 范围限制:-1 ≤ r ≤ 1
  4. 线性关系:只衡量线性关系,不衡量非线性关系

相关系数 vs 协方差

特性协方差相关系数
取值范围无限制-1 到 1
单位有单位无单位(标准化)
可比较性难以比较容易比较
解释性较难解释容易解释

实际应用场景

  • 数据分析:探索变量之间的关系
  • 特征选择:选择与目标变量相关的特征
  • 金融:资产相关性分析、风险管理
  • AI:特征工程、降维、特征选择

第五部分:实际应用场景

1. 描述性统计分析

场景:学生成绩分析

某班级30名学生的数学成绩:
[65, 72, 68, 85, 90, 78, 82, 75, 88, 92, 
 70, 76, 80, 85, 79, 83, 87, 91, 74, 77,
 81, 86, 89, 73, 84, 78, 82, 90, 75, 88]

计算统计量:
均值 = 80.1
中位数 = 82
众数 = 85, 88(都出现2次)
标准差 = 7.2
极差 = 92 - 65 = 27
IQR = Q3 - Q1 = 87 - 75 = 12
偏度 ≈ 0.1(接近对称)

解读

  • 平均分80.1,中位数82,说明成绩分布略左偏
  • 标准差7.2,说明成绩波动适中
  • IQR=12,说明中间50%的学生成绩差距不大

2. 质量控制

场景:产品尺寸控制

某工厂生产的零件长度(mm):
[10.1, 10.0, 9.9, 10.2, 10.1, 9.8, 10.3, 10.0, 10.1, 9.9]

目标:10.0mm ± 0.2mm

统计量:
均值 = 10.04mm
标准差 = 0.15mm

判断:
- 均值接近目标值(10.0mm)✓
- 标准差0.15 < 0.2,在允许范围内 ✓
- 所有数据都在 [9.8, 10.2] 范围内 ✓

结论:生产过程稳定,质量合格

3. 金融分析

场景:投资组合分析

两只股票的收益率:

股票A:[0.02, 0.03, -0.01, 0.04, 0.02]
股票B:[0.01, 0.02, 0.00, 0.03, 0.01]

统计量:
股票A:均值=0.02,标准差=0.018
股票B:均值=0.014,标准差=0.011

协方差 = 0.0002
相关系数 = 0.95

解读:
- 两只股票高度正相关
- 风险分散效果有限(相关性太高)
- 建议加入相关性较低的股票

4. 市场调研

场景:产品满意度调查

100名用户对产品的评分(1-10分):
[8, 9, 7, 8, 9, 10, 8, 7, 9, 8, ...]

统计量:
均值 = 8.2
中位数 = 8
众数 = 8
标准差 = 1.1
偏度 = -0.3(左偏,大部分用户满意)

解读:
- 平均满意度8.2,较高
- 分布左偏,说明大部分用户满意
- 标准差1.1,说明用户评价较为一致

第六部分:在人工智能中的应用

1. 数据预处理

特征标准化

为什么需要标准化?

不同特征的量纲和范围可能差异很大:

特征1(身高,cm):[160, 170, 180]  → 范围:20
特征2(体重,kg):[50, 60, 70]     → 范围:20
特征3(收入,元):[5000, 10000, 15000] → 范围:10000

标准化方法

# Z-score标准化
z = (x - 均值) / 标准差

# 标准化后:均值=0,标准差=1

应用

  • 神经网络:避免某些特征主导训练
  • 聚类算法:确保所有特征同等重要
  • 距离计算:欧氏距离不受单位影响

异常值检测

使用IQR检测异常值

# 异常值检测
Q1 = 数据的25%分位数
Q3 = 数据的75%分位数
IQR = Q3 - Q1

下界 = Q1 - 1.5 × IQR
上界 = Q3 + 1.5 × IQR

异常值 = 数据 < 下界 或 数据 > 上界

应用

  • 数据清洗:识别并处理异常值
  • 欺诈检测:识别异常交易
  • 质量控制:识别异常产品

2. 特征工程

特征选择

使用相关系数选择特征

# 计算特征与目标变量的相关系数
correlation = corr(特征, 目标变量)

# 选择相关性高的特征
if abs(correlation) > 0.3:
    保留该特征

应用

  • 降低维度:去除无关特征
  • 提高模型性能:保留重要特征
  • 减少过拟合:简化模型

特征变换

处理偏态分布

# 右偏分布 → 对数变换
if 偏度 > 1:
    x_new = log(x)

# 左偏分布 → 平方变换
if 偏度 < -1:
    x_new = x²

应用

  • 使数据更接近正态分布
  • 提高模型性能(很多算法假设正态分布)
  • 减少异常值的影响

3. 模型评估

评估模型性能

使用均值和标准差

# 交叉验证
scores = [0.85, 0.87, 0.83, 0.86, 0.84]

均值 = 0.85
标准差 = 0.014

# 解读:
# - 平均准确率85%
# - 标准差小,说明模型稳定
# - 性能可靠

评估预测不确定性

使用标准差

# 预测结果
预测值 = 100
标准差 = 5

# 95%置信区间
置信区间 = [预测值 - 2×标准差, 预测值 + 2×标准差]
         = [90, 110]

# 解读:真实值有95%的概率在[90, 110]范围内

4. 深度学习中的应用

批量归一化(Batch Normalization)

原理

# 对每个批次的数据进行标准化
batch_mean = mean(batch_data)
batch_std = std(batch_data)

normalized_data = (batch_data - batch_mean) / batch_std

作用

  • 加速训练:稳定梯度
  • 提高性能:减少内部协变量偏移
  • 允许更大的学习率

权重初始化

使用方差控制初始化

# Xavier初始化(考虑方差)
weight = random_normal(mean=0, std=sqrt(2/(fan_in + fan_out)))

# 保证激活值的方差合理
# 避免梯度消失或爆炸

5. 主成分分析(PCA)

使用协方差矩阵

PCA步骤

# 1. 计算协方差矩阵
cov_matrix = cov(data)

# 2. 特征值分解
eigenvalues, eigenvectors = eig(cov_matrix)

# 3. 选择主成分(方差最大的方向)
principal_components = eigenvectors[:k]  # 前k个

# 4. 降维
reduced_data = data @ principal_components.T

应用

  • 降维:减少特征数量
  • 可视化:将高维数据降到2D/3D
  • 去噪:去除方差小的方向

6. 异常检测

使用统计方法

基于均值和标准差

# 1. 计算统计量
mean = mean(training_data)
std = std(training_data)

# 2. 定义异常阈值
threshold = mean + 3 × std  # 3σ原则

# 3. 检测异常
if abs(new_data - mean) > threshold:
    标记为异常

应用

  • 网络安全:检测异常流量
  • 医疗诊断:检测异常指标
  • 质量控制:检测异常产品

7. 推荐系统

使用相关性

协同过滤

# 计算用户相似度(使用相关系数)
user_similarity = corr(user_A_vector, user_B_vector)

# 推荐相似用户喜欢的物品
if user_similarity > 0.7:
    推荐用户B喜欢的物品给用户A

应用

  • 电商推荐:推荐相似用户购买的商品
  • 内容推荐:推荐相似用户喜欢的内容
  • 社交网络:推荐相似用户

第七部分:Python实现示例

1. 基础统计量计算

import numpy as np
from scipy import stats

# 示例数据
data = np.array([65, 72, 68, 85, 90, 78, 82, 75, 88, 92])

# 均值
mean = np.mean(data)
print(f"均值: {mean:.2f}")

# 中位数
median = np.median(data)
print(f"中位数: {median:.2f}")

# 众数
mode = stats.mode(data)
print(f"众数: {mode.mode[0]}, 出现次数: {mode.count[0]}")

# 标准差
std = np.std(data, ddof=1)  # ddof=1 表示样本标准差
print(f"标准差: {std:.2f}")

# 方差
variance = np.var(data, ddof=1)
print(f"方差: {variance:.2f}")

# 极差
range_value = np.max(data) - np.min(data)
print(f"极差: {range_value}")

# 四分位距
q1 = np.percentile(data, 25)
q3 = np.percentile(data, 75)
iqr = q3 - q1
print(f"四分位距: {iqr:.2f}")

# 偏度
skewness = stats.skew(data)
print(f"偏度: {skewness:.2f}")

# 峰度
kurtosis = stats.kurtosis(data)
print(f"峰度: {kurtosis:.2f}")

2. 协方差和相关系数

import numpy as np

# 两个变量的数据
x = np.array([160, 165, 170, 175, 180])
y = np.array([50, 55, 60, 65, 70])

# 协方差
covariance = np.cov(x, y)[0, 1]
print(f"协方差: {covariance:.2f}")

# 相关系数
correlation = np.corrcoef(x, y)[0, 1]
print(f"相关系数: {correlation:.2f}")

# 手动计算相关系数
def manual_correlation(x, y):
    x_mean = np.mean(x)
    y_mean = np.mean(y)
    
    numerator = np.sum((x - x_mean) * (y - y_mean))
    denominator = np.sqrt(np.sum((x - x_mean)**2) * np.sum((y - y_mean)**2))
    
    return numerator / denominator

manual_corr = manual_correlation(x, y)
print(f"手动计算相关系数: {manual_corr:.2f}")

3. 异常值检测

import numpy as np

def detect_outliers_iqr(data):
    """使用IQR方法检测异常值"""
    q1 = np.percentile(data, 25)
    q3 = np.percentile(data, 75)
    iqr = q3 - q1
    
    lower_bound = q1 - 1.5 * iqr
    upper_bound = q3 + 1.5 * iqr
    
    outliers = data[(data < lower_bound) | (data > upper_bound)]
    
    return outliers, lower_bound, upper_bound

# 示例数据(包含异常值)
data = np.array([10, 12, 13, 15, 16, 18, 20, 22, 100])  # 100是异常值

outliers, lower, upper = detect_outliers_iqr(data)
print(f"异常值: {outliers}")
print(f"正常范围: [{lower:.2f}, {upper:.2f}]")

4. 数据标准化

import numpy as np

def z_score_normalize(data):
    """Z-score标准化"""
    mean = np.mean(data)
    std = np.std(data, ddof=1)
    
    normalized = (data - mean) / std
    
    return normalized, mean, std

# 示例数据
data = np.array([10, 20, 30, 40, 50])

normalized, mean, std = z_score_normalize(data)
print(f"原始数据: {data}")
print(f"标准化后: {normalized}")
print(f"标准化后均值: {np.mean(normalized):.2f}")
print(f"标准化后标准差: {np.std(normalized, ddof=1):.2f}")

5. 特征选择

import numpy as np
import pandas as pd

def select_features_by_correlation(X, y, threshold=0.3):
    """根据相关系数选择特征"""
    correlations = []
    feature_names = []
    
    for i in range(X.shape[1]):
        corr = np.corrcoef(X[:, i], y)[0, 1]
        correlations.append(abs(corr))
        feature_names.append(f'特征{i+1}')
    
    # 选择相关性大于阈值的特征
    selected_features = [i for i, corr in enumerate(correlations) if corr > threshold]
    
    return selected_features, correlations

# 示例数据
X = np.array([
    [1, 2, 3, 4],
    [2, 4, 6, 8],
    [3, 6, 9, 12],
    [4, 8, 12, 16]
])
y = np.array([2, 4, 6, 8])  # y与X的第一列高度相关

selected, correlations = select_features_by_correlation(X, y, threshold=0.3)
print(f"选择的特征索引: {selected}")
print(f"各特征的相关性: {correlations}")

第八部分:常见问题解答

Q1: 什么时候用均值,什么时候用中位数?

使用均值

  • 数据分布对称
  • 没有极端值
  • 需要代数运算(如加权平均)

使用中位数

  • 数据分布偏斜
  • 存在极端值(异常值)
  • 需要稳健的统计量

例子

收入数据:[3000, 3500, 4000, 4500, 5000, 100000]
均值 = 19666(被100000拉高,不具代表性)
中位数 = 4250(更能代表典型收入)

Q2: 方差和标准差有什么区别?

主要区别

  • 单位:方差的单位是原单位的平方,标准差的单位与原单位相同
  • 数值大小:方差通常比标准差大
  • 解释性:标准差更容易理解和解释

选择

  • 方差:用于数学推导和计算
  • 标准差:用于实际解释和报告

Q3: 协方差和相关系数有什么区别?

主要区别

  • 取值范围:协方差无限制,相关系数在-1到1之间
  • 单位:协方差有单位,相关系数无单位
  • 可比较性:相关系数可以比较不同变量对的关系强度

选择

  • 协方差:用于数学计算(如PCA)
  • 相关系数:用于解释和比较关系强度

Q4: 偏度和峰度有什么用?

偏度

  • 识别数据分布的不对称性
  • 决定是否需要数据变换(如对数变换)
  • 选择合适的统计方法

峰度

  • 识别数据的极端值
  • 评估风险的集中程度(金融)
  • 决定是否需要处理异常值

Q5: 为什么样本方差除以(n-1)而不是n?

原因:无偏估计

样本均值是从样本中计算出来的,这导致:

  • 样本方差会系统性低估总体方差
  • 除以(n-1)可以修正这个偏差
  • 得到总体方差的无偏估计

数学证明

E[s²] = E[(1/(n-1)) × Σ(xᵢ - x̄)²] = σ²

如果除以n:
E[(1/n) × Σ(xᵢ - x̄)²] = (n-1)/n × σ² < σ²(有偏)

总结

核心概念回顾

  1. 集中趋势

    • 均值:平均值,对极端值敏感
    • 中位数:中间值,稳健
    • 众数:出现最多的值
  2. 离散程度

    • 极差:最大值-最小值,简单但不稳健
    • IQR:中间50%的范围,稳健
    • 方差:平均偏差的平方
    • 标准差:方差的平方根,常用
  3. 分布形状

    • 偏度:衡量对称性
    • 峰度:衡量尖锐程度和尾部厚度
  4. 变量关系

    • 协方差:衡量共同变化,有单位
    • 相关系数:标准化的协方差,无单位,易比较

关键比喻总结

  • 均值 = 平衡点:让数据平衡的中心
  • 中位数 = 中间人:不受极端值影响的典型值
  • 标准差 = 典型偏差:数据通常偏离均值多少
  • 协方差 = 同步性:两个变量如何一起变化
  • 相关系数 = 关系强度:标准化的同步性

实际应用建议

  1. 数据探索:先计算基本统计量,了解数据特征
  2. 数据预处理:使用标准差进行标准化
  3. 特征工程:使用相关系数选择特征
  4. 模型评估:使用均值和标准差评估性能
  5. 异常检测:使用IQR或3σ原则

延伸学习

  • 概率论:理解统计量的理论基础
  • 假设检验:使用统计量进行推断
  • 回归分析:使用相关系数分析关系
  • 机器学习:特征工程、模型评估

参考文献

  1. 统计学教材:David Freedman《统计学》
  2. 数据分析:Wes McKinney《利用Python进行数据分析》
  3. 机器学习:周志华《机器学习》
  4. 深度学习:Ian Goodfellow《深度学习》

评论