R语言 离群点分析
本文将重点介绍离群点分析,包括R编程语言中的离群点检测和移除。
什么是离群点
远离数据集其他点的数据点被认为是离群点。这指的是分散在其他数据值中的数据值,破坏了数据集的一般分布。
离群点对模型的影响
- 数据的格式出现偏斜。
- 改变了数据总体分布的平均值、方差和其他统计特征。
- 导致模型的准确性水平出现偏差。
涉及离群点分析的步骤
第1步: 在这一步中,我们将默认使用rnorm()函数创建包含outliner在内的数据,并生成500个不同的数据点。此外,我们将在这个数据中加入10个随机离群点。
data <- rnorm(500)
data[1:10] <- c(46,9,15,-90,
42,50,-82,74,61,-32)
第2步: 在这一步中,我们将使用boxplot分析所提供的数据中的outliner,它将绘制一个条形图,我们将能够分析数据中的离群点。正如在回顾箱形图时所说,离群点被定义为位于箱形图晶须之外的数据点。
boxplot()函数
膨胀图是通过使用R编程语言中的boxplot()函数创建的。
语法: boxplot(x, data, notch, varwidth, names, main)
参数
- x: 该参数设置为一个向量或一个公式。
- data :该参数设置为数据框。
- notch: 该参数是横轴的标签。
- varwidth: 这个参数是一个逻辑值。设置为 “true”,可以绘制与样本大小成比例的框的宽度。
- main: 该参数是图表的标题。
- names: 该参数是在每个图表下显示的组标签。
data <- rnorm(500)
data[1:10] <- c(46,9,15,-90,
42,50,-82,74,61,-32)
boxplot(data)
输出
第3步: 在这一步中,我们将删除R中提供的数据boxplot.stats()函数中的离群点;同样的图示在以下代码中显示。
data <- data[!data %in% boxplot.stats(data)$out]
第4步: 在这一步中,我们将只是简单地通过绘制步骤2中的boxplot并进行相应的验证,来验证outliner是否已经从数据中删除。
data <- rnorm(500)
data[1:10] <- c(46,9,15,-90,42,50,-82,74,61,-32)
data <- data[!data %in% boxplot.stats(data)$out]
boxplot(data)
输出
我们可以在输出图中看到,图中没有离群点。因此,我们成功地分析并去除离群点。