统计思维(实例5)——变量之间的关系
本章将研究变量之间的关系,如果能从一个变量的信息中得到另一个变量的信息,那么这两个变量之间就是相关的。
散点图
研究两个变量之间关系的最简单方法是散点图(scatter plot),但好的散点图的绘制并不简单。
下面绘制BRFSS调查参与者的体重与身高关系的散点图。但这个绘制结果数据都成列聚集,这是因为身高数据四舍五入到相邻的英寸,转换为厘米后,再次四舍五入。在这个转换过程中,丢失了一些信息。
图1 BRFSS调查参与者的体重与身高关系散点图,未抖动(左),抖动(右)
即使经过了抖动处理,散点图也不是展示数据的最佳方法。图中有很多重叠的点,遮盖了密集部分的数据,使离群值显得特别突出。这种效果称为饱和(saturation)。我们可以使用参数alpha解决这个问题,将图中的点显示为半透明的。
图2 经过抖动和透明处理的散点图(左)和hexbin图(右)
对于中等规模的数据集,在散点图设置透明度效果很好。但要处理规模更大的数据集,可以使用hexbin图。hexbin图将图像划分为六角形的区间,将每个区间按照其中数据点的数量进行着色。
hexbin的优点是可以很好地展示变量关系的形状,并且对于大数据集运行效率(时间效率和生成的文件大小)很高。缺点是离群值在图中不可见。
描述关系特征
散点图能让我们对变量关系有个大体了解,其他可视化方法则可以让我们更深入了解变量关系的本质。一种方法是对一个变量进行分区,绘制另一个变量的百分位数。
计算分区的过程如下:
- 去除指定列含有nan值的数据行,对数据进行分区
- 遍历每个分区的数据,计算其身高均值和体重CDF
- 绘制身高对应的体重百分位数
下图展示了绘制结果,在140-200厘米,变量关系几乎是线性的。140-200厘米这个范围涵盖了超过99%的数据。
图3 一组高度分区的体重百分位数
相关性
相关性(correlation)是一个统计量,用于量化两个变量之间关系的强弱。
度量相关性的困难在于需要比较的变量通常使用不同的单位,即使变量使用相同的单位,也可能来自不同的分布。通常有两个常见的解决方法:
- 将每个值转换为标准分数(standard score),即其偏离均值的标准差数。这种转换会产生“Pearson乘积矩相关系数”。
- 将每个值都转换为秩,即其在所有值的排列表中的索引。这种转换会产生“Spearman秩相关系数”。
协方差
协方差(covariance)可以度量两个变量共同变化的趋势。如果我们有两个序列X和Y,那么序列中的值与均值的偏差分别为:
协方差是这些乘积的均值:
其中n为这两个序列的长度(两个序列的长度必须相等)。
如果学过线性代数,会发现Cov是两组偏差的点乘积除以其长度。因此,如果两个向量相同,则协方差值最大;如果两个向量正交,则协方差为0;如果两个向量方向相反,则协方差为负数。
Pearson相关性
协方差在一些计算中非常有用,但其含义很难解释,因此很少作为摘要统计量。解决这个问题的方法之一是将偏差除以标准差,得到标准分数,然后计算标准分数的乘积:
其中Sx和Sy分布是X和Y的标准差。
这些乘积的均值为:
或者,可以通过分解Sx和SyS_Y改写标准差:
这个公式以统计学家Karl Pearson的名字命名,称为Pearson相关性。Pearson相关性取值介于-1~+1之间(包含端点)。
\rhoρ的大小表明了相关性的强弱程度,如果\rhoρ为1或-1,两个变量完全相关。
非线性关系
Pearson相关性只是度量了线性关系,如果变量之间存在非线性关系,那么\rhoρ对变量相关性强弱的估计就可能是错误的。
下图摘取自Wiki,展示了数据集的散点图和相关系数。
图4 各种相关性的数据集示例
第一行展示了不同线性相关性的数据集,第二行展示了具有不同斜度的完全相关,第三行展示了变量非线性的相关性。
Spearman秩相关
如果变量之间的关系是线性的,而且变量大致符合正态分布,那么Pearson相关性能很好地说明相关性的强弱,但离群值会影响Pearson相关性的稳健性。Spearman秩相关能缓解离群值以及偏斜分布的影响,也可用于描述变量的相关性。要计算Spearman相关性,必须计算每个值的秩,即该值在排序样本中的索引,然后计算这些秩的Pearson相关性。
相关性和因果关系
如果变量A和变量B相关,那么有3种可能:A导致B,B导致A,或其他因素导致A和B。这些解释称为“因果关系”。但相关性并不意味着因果关系。
证明因果关系的方式有:
- 时间 如果A在B之前发生,那么A可能导致B,而B不可能导致A。
- 随机性 如果将一个大型样本随机分为两组,计算任意变量的均值,那么两组结果的差别应该很小。
正是这些想法催生了随机对照试验。在随机对照试验中,试验对象被随机分配到两个(或多个)组:试验组和对照组,试验组接受某些干预,对照组不接受干预。
在某些情况下,还可以使用回归分析来推导因果关系,这将在后文介绍。
参考文献:
统计思维. Allen B.Downey. 金迎 译
统计思维(实例5)——变量之间的关系相关推荐
- python 卡方分布值_python数据分析探索变量之间的关系
探索变量之间的关系 引言 深入探索分析数据价值有几个重要步骤:①变量的分布检验,②探索变量间的关系,③建立关系模型,④评估,⑤总结结论与建议.接下来看看数据分析的重要一环–「探索变量间的关系」. 1 ...
- R语言ggplot2可视化散点图、可视化两个数值变量之间的关系、使用geom_smooth函数基于loess方法拟合数据点之间的趋势关系曲线、自定义数据点的大小、色彩、添加主标题、副标题、题注信息
R语言ggplot2可视化散点图.可视化两个数值变量之间的关系(Scatter plot).使用geom_smooth函数基于loess方法拟合数据点之间的趋势关系曲线.自定义数据点的大小.色彩.添加 ...
- Python使用matplotlib可视化散点图、可视化两个数值变量之间的关系(Scatter plot)
Python使用matplotlib可视化散点图.可视化两个数值变量之间的关系(Scatter plot) 目录 Python使用matplotlib可视化散点图.可视化两个数值变量之间的关系(Sca
- 一张图说明 函数, 实例(对象), 原型之间的关系
前言 很多初学者都对函数,实例(对象), 原型之间的关系理不清楚. 网上五花八门的文章很多,要么不知所云,要么是晦涩难懂. 本文意在用最简洁的语言跟示例让初学者理清楚这三者之间的关系,无需理会其内部原 ...
- 浅谈javascript中原型(prototype)、构造函数、对象实例及三者之间的关系
转自:http://www.cnblogs.com/zhangwei412827/archive/2012/12/14/2816263.html 浅谈javascript中原型(prototype). ...
- 构造函数,对象原型,实例对象三者之间的关系
撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 1.构造函数,原型对象,实例对象三者之间的关系 每创建一个函数,该函数都会自动带有一个prototype属性.该 ...
- correl函数相关系数大小意义_相关系数越大,说明两个变量之间的关系就越强吗...
展开全部 相关系数越大,说明两个变量之间的关系就越强.当相关系数为1时,两个变量其e68a84e8a2ad3231313335323631343130323136353331333431353431实 ...
- R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、估计(Propensity score)、预测倾向性评分并可视化不同分组倾向性评分的分布
R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算.估计(Propensity score).预测倾向性评分并可视化不同分组倾向性评分的分布 目录
- R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算、使用predict函数预测倾向性评分并将结果整合到dataframe中
R语言使用glm构建logistic回归模型,构建多个协变量和分组变量之间的关系模型进行倾向性评分计算.估计(Propensity score).使用predict函数预测倾向性评分并将结果整合到da ...
- 数据分析的统计方法选择小结(变量之间的关联性分析)
数据分析的统计方法选择小结(变量之间的关联性分析) 一.两个变量之间的关联性分析 1.两个变量均为连续型变量 1)小样本并且两个变量服从双正态分布,则用Pearson相关系数做统计分析 2)大样本或两 ...
最新文章
- Linux(CentOS)目录操作命令、文件操作命令、压缩解压缩命令
- 人体姿态跟踪--Pose Flow: Efficient Online Pose Tracking
- MySQL-通过MaxScale实现读写分离初探
- 国内唯一,阿里云挺进 Forrester 数据流分析报告“强劲表现者”象限
- 啥?这就是一个高级报表/BI数据分析工程师的一天?
- Java学习资源、视频教程汇总
- 无线充qi协议c语言详解,QI无线充通信协议数据包格式解析
- Flex应用性能优化
- ggtree/FigTree可视化系统发育树及bootstrap值
- 计算机病毒课后讨论题,《防治计算机病毒》答辩题目及解析
- 计算机可移动磁盘无法显示图片,移动硬盘不显示盘符原因及解决方法步骤介绍【图文详解】...
- 深度学习与计算机视觉教程(17) | 深度强化学习 (马尔可夫决策过程,Q-Learning,DQN)(CV通关指南·完结)
- push notifications step1 打不开
- android如何设置自适应大小的背景图片,如何调整背景图片大小以适应Android中的应用程序屏幕大小...
- Thymeleaf th:each遍历,th:if、th:switch 条件判断,input,select,radio 回显赋值
- MeteoInfoLab脚本示例:站点填图
- Linux服务器安装的anaconda下载库、包很慢
- Win32 ListBox控件
- BetaFlight深入传感设计之三:IMU传感模块
- 集合框架--集合框架体系概述
热门文章
- 什么是AOP(面向切片编程)
- SpringBoot 整合 ElasticSearch 实现京东搜索(手把手带你完成一个 “前后端分离项目”)
- Windows搭建基于EClipse的CppUTest单元测试环境
- 我的电脑数据执行保护设置不了须是计算机管理员,比使用boot.ini文件。我该怎么办?
- 阿齐索-对接淘宝第三方平台
- SpringCloud版本Hoxton SR5 --- 第二讲:eureka 、eureka与zookeeper的区别与使用场景。
- 【计算机】数据结构-严蔚敏/清华大学P1
- 基于微信小程序的图书馆管理系统设计与实现(论文+程序设计源码+数据库文件)
- Redhat8认证考试(第三题)
- MFC无边框窗体设置窗口圆角,并且绘制边框