简介
探索性数据分析(exploratory data analysis, EDA):使用可视化方法和数据转换来系统化地探索数据。EDA 是一个可迭代的循环过程,具有以下作用:
(1) 对数据提出问题。
(2) 对数据进行可视化、转换和建模,进而找出问题的答案。
(3) 使用上一个步骤的结果来精炼问题,并提出新问题。
术语
• 变量:一种可测量的数量、质量或属性。
• 值:变量在测量时的状态。变量值在每次测量之间可以发生改变。
• 观测:或称个案,指在相同条件下进行的一组测量(通常,一个观测中的所有测量是在同一时间对同一对象进行的)。一个观测会包含多个值,每个值关联到不同的变量。有时我们会将观测称为数据点。
• 表格数据:一组值的集合,其中每个值都关联一个变量和一个观测。如果每个值都有自己所属的“单元”,每个变量都有自己所属的列,每个观测都有自己所属的行,那么表格数据就是整洁的。
变动
变动是每次测量时数据值的变化趋势。
对分布进行可视化表示
条形图适合用于对分类变量的分布进行展示
典型值和异常值
条形图和直方图都用比较高的条形表示变量中的常见值,而用比较矮的条形表示变量中不常见的值。没有条形的位置表示数据中没有这样的值。
异常值是与众不同的观测或者是模式之外的数据点。有时异常值是由于数据录入错误而产生的;有时异常值则能开辟出一块重要的新科学领域。
缺失值
如果在数据集中发现异常值,但只想继续进行其余的分析工作,那么有 2 种选择:
• 将带有可疑值的行全部丢弃
•使用缺失值来代替异常值
ifelse()函数有三个参数:第一个参数 test 应该是一个逻辑向量,如果 test 为 TRUE,函数结果就是第二个参数 yes 的值;如果 test 为 FALSE,函数结果就是第三个参数 no 的值。
有缺失值存在时,在作图时会发出警告,可以使用na.rm = TRUE使作图时自动出去na值:
相关变动
如果变动描述的是一个变量内部的行为,那么相关变动描述的就是多个变量之间的行为。相关变动是两个或多个变量以相关的方式共同变化所表现出的趋势。
分类变量与连续变量
分类变量可以将连续变量分为不同的组,然后展示不同分组情况下的连续变量分布。展示分布的方式包括直方图,密度曲线图,箱线图等。
直方图:
密度曲线图:
箱线图:
箱线图是对变量值分布的一种简单可视化表示,这种图在统计学家中非常流行。每张箱线图都包括以下内容。
• 一个长方形箱子,下面的边表示分布的第 25 个百分位数,上面的边表示分布的第 75 个百分位数, 上下两边的距离称为四分位距。箱子的中部有一条横线, 表示分布的中位数,也就是分布的第 50 个百分位数。这三条线可以表示分布的分散情况,还可以帮助我们明确数据是关于中位数对称的,还是偏向某一侧。
• 圆点表示落在箱子上下两边 1.5 倍四分位距外的观测,这些离群点就是异常值,因此需要单独绘出。
• 从箱子上下两边延伸出的直线(或称为须)可以到达分布中最远的非离群点处。
将箱线图旋转90度:
两个分类变量
要想对两个分类变量间的相关变动进行可视化表示,需要计算出每个变量组合中的观测数量。
geom_count() 函数:
dplyr中的count()函数:
两个连续变量
对于两个连续变量间的相关变动的可视化表示,一般来说散点图展示两个连续变量之间的相关性是最合适不过的。
如果相关性较好,可以绘制其他的可视化图形,其可视化效果也会呈现出较好的相关性。
模式与模型
模式是数据科学中最有效的工具之一,因为其可以揭示相关变动。如果说变动会生成不确定性,那么相关变动就是减少不确定性。如果两个变量是共同变化的,就可以使用一个变量的值来更好地预测另一个变量的值。如果相关变动可以归因于一种因果关系(一种特殊情况),那么就可以使用一个变量的值来控制另一个变量的值。
模型是用于从数据中抽取模式的一种工具,拟合出一个较好的模型是一个很复杂的过程,需要大量的数据作为铺垫。
ggplot2调用
ggplot() 函数的前两个参数是 data 和 mapping, aes() 函数的前两个参数是 x 和 y。