R语言离群值处理分析

简介: R语言离群值处理分析

数据中的异常值可能会使预测失真并影响准确性,尤其是在回归模型中,如果您没有正确检测并处理它们,那么它们会影响精度


为什么异常值检测很重要?

在真实观察中处理或改变异常值/极端值不是标准操作程序。但是,了解它们对预测模型的影响至关重要。留待调查人员判断是否需要治疗异常值以及如何去做。

那么,为什么识别极端值很重要?因为,它可以大大偏倚/改变合适的估计和预测。让我使用cars数据集来说明这一点。

为了更好地理解异常值的含义,我将比较具有和不具有异常值的汽车数据集的简单线性回归模型的拟合。为了清楚地区分效果,我手动将极端值引入原始数据集。然后,我预测这两个数据集。


检测异常值


单变量方法

对于给定的连续变量,异常值是那些位于1.5 * I Q R之外的观测值,其中IQR,“四分位数间距”是第75和第25个四分位之间的差值。在盒子下面看看胡须外的点。


双变量方法

可视化X和Y的框图,用于分类X

什么是推论?盒子水平的变化表明,Month似乎有影响,ozone_reading而Day_of_week没有。相应分类层级中的任何异常值都显示为盒外晶须外的点。

你可以在箱形图中看到几个异常值,以及这个值是如何ozone_reading增加的pressure_height。这很清楚。


多变量模型方法

基于仅仅一个(相当不重要)的特征声明观察结果为异常值可能会导致不切实际的推论。当你必须决定一个单独的实体(由行或观察值表示)是否是极值时,最好集体考虑重要的特征(X)。输入Cook的距离。


库克距离

库克距离是一个关于给定回归模型计算的度量,因此仅受模型中包含的X个变量的影响。但是,厨师的距离是什么意思?它计算每个数据点(行)对预测结果的影响。

现在让我们从原始数据中找出有影响的行。如果你提取并检查每一个有影响的行(从下面的输出),你将能够推断出为什么该行变得有影响力。模型中包含的X个变量之一可能具有极端值。


异常值测试

该功能outlierTest从car包中给出了基于给定的模型最极端的观察。以下是基于mod我们刚创建的线性模型对象的示例。


相关文章
|
4天前
|
机器学习/深度学习 运维 算法
【视频】检测异常值的4种方法和R语言时间序列分解异常检测
【视频】检测异常值的4种方法和R语言时间序列分解异常检测
|
4天前
|
机器学习/深度学习 前端开发 数据可视化
R语言缺失数据变量选择LASSO回归:Bootstrap重(再)抽样插补和推算
R语言缺失数据变量选择LASSO回归:Bootstrap重(再)抽样插补和推算
13 2
|
4天前
|
机器学习/深度学习 算法 前端开发
【视频】为什么要处理缺失数据?如何用R语言进行缺失值填充?
【视频】为什么要处理缺失数据?如何用R语言进行缺失值填充?
14 1
|
7天前
|
数据可视化 算法 数据挖掘
Python用KShape对时间序列进行聚类和肘方法确定最优聚类数k可视化
Python用KShape对时间序列进行聚类和肘方法确定最优聚类数k可视化
69 8
|
13天前
|
数据可视化 Python
PYTHON贝叶斯推断计算:用BETA先验分布推断概率和可视化案例
PYTHON贝叶斯推断计算:用BETA先验分布推断概率和可视化案例
31 7
|
13天前
|
数据可视化
R语言广义相加模型 (GAMs)分析预测CO2时间序列数据
R语言广义相加模型 (GAMs)分析预测CO2时间序列数据
17 0
|
14天前
|
数据可视化 算法 数据挖掘
R语言中不同类型的聚类方法比较
R语言中不同类型的聚类方法比较
23 1
|
14天前
|
数据库
R语言中回归模型预测的不同类型置信区间应用比较分析
R语言中回归模型预测的不同类型置信区间应用比较分析
15 0
|
13天前
|
数据可视化 算法 数据挖掘
R语言聚类有效性:确定最优聚类数分析IRIS鸢尾花数据和可视化
R语言聚类有效性:确定最优聚类数分析IRIS鸢尾花数据和可视化
30 1
|
13天前
|
运维 算法 C++
R语言时间序列分解和异常检测方法应用案例
R语言时间序列分解和异常检测方法应用案例
22 0