【漫画机器学习】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” 进一步说明数据可视化的重要性

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

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/965318.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】指针运算与数组关系:详细分析与实例讲解

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C语言 文章目录 💯前言💯1. 指针的基础运算1.1 指针的加减运算1.2 指针加整数与指针减整数1.3 指针与指针的运算 💯2. 指针的实际应用:模拟 strlen 函数2.1 使用指针模拟…

在线教程丨YOLO系列10年更新11个版本,最新模型在目标检测多项任务中达SOTA

YOLO (You Only Look Once) 是计算机视觉领域中最具影响力的实时目标检测算法之一,以其高精度与高效性深受业界青睐,广泛应用于自动驾驶、安防监控、医疗影像等领域。 该模型最早于 2015 年由华盛顿大学研究生 Joseph Redmon 发布,开创了将目…

面向对象程序设计-实验1

6-1 求两个或三个整数中的最大数&#xff0c;用带默认参数的函数实现 本题要求实现一个带默认参数的函数&#xff0c;求两个或三个整数中的最大数 代码清单&#xff1a; #include <iostream> using namespace std; int main() { int max( int a,int b,int c0); int …

如何打开vscode系统用户全局配置的settings.json

&#x1f4cc; settings.json 的作用 settings.json 是 Visual Studio Code&#xff08;VS Code&#xff09; 的用户配置文件&#xff0c;它存储了 编辑器的个性化设置&#xff0c;包括界面布局、代码格式化、扩展插件、快捷键等&#xff0c;是用户全局配置&#xff08;影响所有…

2025简约的打赏系统PHP网站源码

源码介绍 2025简约的打赏系统PHP网站源码 源码上传服务器&#xff0c;访问域名/install.php安装 支持自定义金额打赏 集成支付宝当面付 后台管理系统 订单记录查询 效果预览 源码获取 2025简约的打赏系统PHP网站源码

自指学习:AGI的元认知突破

文章目录 引言:从模式识别到认知革命一、自指学习的理论框架1.1 自指系统的数学定义1.2 认知架构的三重反射1.3 与传统元学习的本质区别二、元认知突破的技术路径2.1 自指神经网络架构2.2 认知效能评价体系2.3 知识表示的革命三、实现突破的关键挑战3.1 认知闭环的稳定性3.2 计…

Ubutun本地部署DeepSeek R1

目录 一、本地部署&终端命令行交互 二、网页端交互 三、参考链接 一、本地部署&终端命令行交互 Ollama 是一个轻量级的大语言模型管理工具&#xff0c;支持 Windows / Mac / Linux。 Ollama官网&#xff1a;Ollama # 下载安装ollama curl -fsSL https://ollama.co…

【Linux】Linux经典面试题

文章目录 1. Linux文件系统1.1 什么是inode&#xff1f;1.2 硬链接和软链接的区别1.3 文件权限和所有权 2. Linux进程管理2.1 进程和线程的区别2.2 进程间通信&#xff08;IPC&#xff09;2.3 守护进程&#xff08;Daemon&#xff09; 3. Linux内存管理3.1 虚拟内存和物理内存3…

MySQL 缓存机制与架构解析

目录 一、MySQL缓存机制概述 二、MySQL整体架构 三、SQL查询执行全流程 四、MySQL 8.0为何移除查询缓存&#xff1f; 五、MySQL 8.0前的查询缓存配置 六、替代方案&#xff1a;应用层缓存与优化建议 总结 一、MySQL缓存机制概述 MySQL的缓存机制旨在提升数据访问效率&am…

递归练习八(记忆化搜索)

一、解题心得 记忆化搜索就是带着备忘录递归搜索。 函数体设计&#xff1a;进 dfs 后先看看要找的值是不是在备忘录里面存着&#xff0c;有就直接返回&#xff0c;没有再考虑递归出口和中间函数逻辑。 记忆化搜索和递归暴搜都没有很大的关系&#xff0c;而是和动态规划问题有…

uniapp小程序自定义中间凸起样式底部tabbar

我自己写的自定义的tabbar效果图 废话少说咱们直接上代码&#xff0c;一步一步来 第一步&#xff1a; 找到根目录下的 pages.json 文件&#xff0c;在 tabBar 中把 custom 设置为 true&#xff0c;默认值是 false。list 中设置自定义的相关信息&#xff0c; pagePath&#x…

app专项测试(网络测试流程)

一、网络测试的一般流程 step1&#xff1a;首先要考虑网络正常的情况 ① 各个模块的功能正常可用 ② 页面元素/数据显示正常 step2&#xff1a;其次要考虑无网络的情况 ① APP各个功能在无网络情况下是否可用 ② APP各个页面之间切换是否正常 ③ 发送网络请求时是…

【Kubernetes Pod间通信-第3篇】Kubernetes中Pod与ClusterIP服务之间的通信

引言 我们之前了解了在不同场景下,Kubernetes中Pod之间的通信是如何路由的。 【Kubernetes Pod间通信-第1篇】在单个子网中使用underlay网络实现Pod到Pod的通信【Kubernetes Pod间通信-第2篇】使用BGP实现Pod到Pod的通信现在,我们来看看在集群中,Pod与服务之间的通信是如何…

【免费】2007-2019年各省科技支出占一般公共预算支出的比重数据

2007-2019年各省科技支出占一般公共预算支出的比重数据 1、时间&#xff1a;2007-2019年 2、来源&#xff1a;国家统计局、统计年鉴 3、指标&#xff1a;行政区划代码、地区名称、年份、科技支出占一般公共预算支出的比重 4、范围&#xff1a;31省 5、指标解释&#xff1a…

【LeetCode】day15 142.环形链表II

142. 环形链表 II - 力扣&#xff08;LeetCode&#xff09; 题目描述 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则…

C基础(六)指针,指针的基础概念、变量定义、运算、大小等

指针&#xff1a; 什么是指针&#xff1a;指针表示内存地址&#xff0c;平时所说的指针一般是保存地址的指针变量。定义指针变量 格式&#xff1a;数据类型 *指针变量名。初始化和赋值&#xff1a;指针指向变量的首地址。定义指针后若未赋值则为野指针&#xff1b;可将变量地址…

【R语言】获取数据

R语言自带2种数据存储格式&#xff1a;*.RData和*.rds。 这两者的区别是&#xff1a;前者既可以存储数据&#xff0c;也可以存储当前工作空间中的所有变量&#xff0c;属于非标准化存储&#xff1b;后者仅用于存储单个R对象&#xff0c;且存储时可以创建标准化档案&#xff0c…

央行发布《贸易金融分布式账本技术要求》,参考架构包括5部分

《银行科技研究社》(作者 木子剑):2024年12月11日,中国人民银行发布金融行业标准《贸易金融分布式账本技术要求》(JR/T 0308-2024)(以下简称“《要求》”),当日实施。据悉,该文件的起草单位包括6大行和多家股份制银行等。 《要求》规定了分布式账本技术在贸易金融领域…

CSS盒模型详解:从零开始理解margin、border、padding

引言 在CSS中&#xff0c;盒模型(Box Model)是一个非常基础且重要的概念。它定义了网页中每个元素如何占据空间以及元素间的关系。今天&#xff0c;我们就通过简单的例子来理解盒模型的构成。 盒模型的组成部分 CSS盒模型主要由四个部分组成&#xff08;从外到内&#xff09…

DS图(中)(19)

文章目录 前言一、图的遍历广度优先遍历深度优先遍历 二、最小生成树Kruskal算法Prim算法两种方法对比 总结 前言 承上启下&#xff0c;我们来学习下图的中篇&#xff01;&#xff01;&#xff01; 一、图的遍历 图的遍历指的是遍历图中的顶点&#xff0c;主要有 广度优先遍历 …