当前位置: 首页 > news >正文

【漫画机器学习】083.安斯库姆四重奏(Anscombe‘s quartet)

安斯库姆四重奏(Anscombe's Quartet)

1. 什么是安斯库姆四重奏?

安斯库姆四重奏(Anscombe's Quartet)是一组由统计学家弗朗西斯·安斯库姆(Francis Anscombe)1973 年 提出的 四组数据集。它们的均值、方差、回归直线、相关系数等统计量几乎相同,但当绘制成图表时却呈现出完全不同的分布形态

这个四重奏展示了数据可视化的重要性,表明仅凭统计数值不能全面反映数据的真实分布。


2. 数据集示例

安斯库姆的四个数据集如下,每个数据集包含 (x, y) 对

数据集xxx 值yyy 值
第一组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 58.04, 6.95, 7.58, 8.81, 8.33, 9.96, 7.24, 4.26, 10.84, 4.82, 5.68
第二组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 59.14, 8.14, 8.74, 8.77, 9.26, 8.10, 6.13, 3.10, 9.13, 7.26, 4.74
第三组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 57.46, 6.77, 12.74, 7.11, 7.81, 8.84, 6.08, 5.39, 8.15, 6.42, 5.73
第四组8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 86.58, 5.76, 7.71, 8.84, 8.47, 7.04, 5.25, 5.56, 7.91, 6.89, 6.11

尽管这些数据集的均值、方差、相关系数、回归直线 近似相同,但它们的实际分布却大不相同。


3. 统计量分析

对每个数据集计算以下统计量,我们发现它们几乎相等

  • 均值
  • 方差
  • 相关系数
  • 回归直线

尽管统计量相同,但它们的数据分布和图形表现却大相径庭


4. 数据可视化

如果只看统计量,可能会认为四个数据集的分布类似。但当我们绘制散点图时,会看到完全不同的形态:

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd# Anscombe's Quartet 数据
anscombe = sns.load_dataset("anscombe")# 创建四个子图
fig, axes = plt.subplots(2, 2, figsize=(10, 8))
fig.suptitle("Anscombe's Quartet")# 遍历四个数据集并绘制散点图和回归直线
for i, ax in enumerate(axes.flatten(), 1):data = anscombe[anscombe['dataset'] == f'II{"" if i == 1 else i}']ax.scatter(data['x'], data['y'], label=f'Dataset {i}', color='blue', edgecolor='k')ax.set_title(f"Dataset {i}")# 绘制回归直线m, b = np.polyfit(data['x'], data['y'], 1)ax.plot(data['x'], m * data['x'] + b, color='red')plt.tight_layout()
plt.show()

 

5. 观察四个数据集的不同

从图中可以看出:

  • 数据集 1:正常的线性回归数据分布。
  • 数据集 2:呈现非线性关系,回归直线并不能很好地描述数据趋势。
  • 数据集 3:大多数点与回归直线接近,但存在一个异常值(outlier)
  • 数据集 4:x 值恒定,数据呈现一条垂直线,回归模型毫无意义。

6. 重要性:统计数据 ≠ 数据特性

安斯库姆四重奏的核心思想是:

  1. 统计数值不能完全代表数据分布。必须配合数据可视化进行分析。
  2. 数据可视化可以揭示数据的模式,如线性关系、异常值、非线性分布等
  3. 异常值可能极大地影响回归分析,不能仅依赖统计量进行判断。

7. 结论

  • 仅依赖均值、方差、相关系数等统计数值,可能导致误导性的结论。
  • 进行数据分析时,应结合可视化手段(如散点图、直方图等),直观检查数据的分布。
  • 安斯库姆四重奏提醒我们,数据科学不只是数学统计,还包括数据探索与可视化。

8. 拓展:现代版安斯库姆四重奏

在 2017 年,Alberto Cairo 提出了“Datasaurus Dozen”,扩展了安斯库姆四重奏的思想。它展示了一组具有相同统计量但形态完全不同的数据集,其中包括:

  • 恐龙形状
  • 圆形分布
  • 星形分布
  • 水平线形分布

👉 核心思想仍然是:数据可视化远比仅依赖统计数值更重要。


9. 总结

主题说明
安斯库姆四重奏4 组数据集,统计特性相似但分布不同
均值、方差、相关系数统计量不能完全代表数据特征
可视化的重要性必须结合数据可视化(散点图等)
数据分布差异可能是非线性、异常值、特定形态
现代扩展“Datasaurus Dozen” 进一步说明数据可视化的重要性

🚀 数据分析不仅仅是计算统计量,数据可视化同样不可忽视!

 

http://www.lryc.cn/news/532386.html

相关文章:

  • TCP | RFC793
  • 2025蓝桥杯JAVA编程题练习Day2
  • 《解锁GANs黑科技:打造影视游戏的逼真3D模型》
  • es match 可查 而 term 查不到 问题分析
  • 【OpenCV实战】基于 OpenCV 的多尺度与模板匹配目标跟踪设计与实现
  • 将有序数组转换为二叉搜索树(力扣108)
  • 开放式TCP/IP通信
  • S4 HANA (递延所得税传输)Deferred Tax Transfer - S_AC0_52000644
  • 如何从0开始做自动化测试?
  • DeepSeek服务器繁忙问题的原因分析与解决方案
  • C#,入门教程(10)——常量、变量与命名规则的基础知识
  • 宏观经济:信贷紧缩与信贷宽松、通货膨胀与通货紧缩以及经济循环的四个周期
  • 分层解耦.
  • JAVA异步的TCP 通讯-客户端
  • MySQL的存储引擎对比(InnoDB和MyISAM)
  • 【2025-02-06】简单算法:相向双指针 盛最多水的容器 接雨水
  • 2.6-组合博弈入门
  • 【教学】推送docker仓库
  • 【大数据技术】本机PyCharm远程连接虚拟机Python
  • 3060显卡掉帧是为什么?3060掉帧卡顿解决方法
  • Kubernetes集群通过Filebeat收集日志
  • SQLAlchemy-2.0中模型定义和alembic的数据库迁移工具
  • [含文档+PPT+源码等]精品基于Python实现的django个性化健康餐计划订制系统
  • Python3中异常处理:try/except语句
  • [ Spring] Integrate Spring Boot Dubbo with Nacos 2025
  • 【3分钟极速部署】在本地快速部署deepseek
  • 【QT笔记】使用QScrollArea实现多行文本样式显示
  • 大模型中提到的超参数是什么
  • 【Uniapp-Vue3】z-paging插件组件实现触底和下拉加载数据
  • UE虚幻引擎No Google Play Store Key:No OBB found报错如何处理