R语言中的离群点检测方法

本文介绍了R语言中用于离群点检测的方法,包括单变量和多变量检验,并重点讲解了局部离群点因子(LOF)的概念。通过LOF算法,利用lofactor()函数对数据集如iris进行离群点识别,揭示了LOF如何在数值型数据中发现局部密度较低的点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文中将介绍单变量离群点检测、通过聚类检测离群点的例子最后演示从时间序列中检测离群点。

一、单变量和多变量的离群点检验。

set.seed(123)
data<-rnorm(100)#随机生成100个符合正态分布的随机数
summary(data)
plot(density(data)) #打印出data的概率密度函数
#打印出data箱线图,从箱线图中可以看到地步有一个离群值
boxplot(data)
boxplot.stats(data)$out  #将这个离群值输出出来
#[1] -2.309169
#----多变量的离群值检测,跟单变量离群值检测基本类似,但是多加一步
set.seed(1235)
x<-rnorm(100)
y<-rnorm(100)
df<-data.frame(x,y)
head(df)
str(df);summary(df)
#找出x中的离群点
boxplot(x);boxplot.stats(x)$out
#找出y中的离群点
boxplot(y);boxplot.stats(y)$out

#找出这些离群点在各自数组中的下标
ylist<-which(y %in% boxplot.stats(y)$out)
# > ylist
# [1] 45 68
xlist<-which(x %in% boxplot.stats(x)$out)
# > xlist
# [1] 39 50

#我们视x和y中的离群值所构成的点都为离群点
unionlist<-union(xlist,yl
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值