R语言|数据预处理--5异常值分析及处理

数据集接3缺失值离群点处理》中2

1、异常值分析及处理

#获取月收入的异常值

out <-boxplot.stats(traindata$x5)

boxplot(traindata$x5)

# which(traindata$x5%in% out)

# traindata1 <-traindata[-which(traindata$x5 %in% out)]

#boxplot(traindata1$x5)

 

#首先对于x2变量,即客户的年龄,我们可以定量分析,发现有以下值

unique(traindata$x2)

#可以看到年龄中存在0值,显然是异常值,予以剔除。

traindata <-traindata[-which(traindata$x2==0), ]

 

#对于x3,x7,x9三个变量,由下面的箱线图可以看出,均存在异常值,且由unique函数可以得知均存在9698两个异常值,因此予以剔除。同时会发现剔除其中一个变量的9698值,其他变量的9698两个值也会相应被剔除

unique(traindata$x3)

traindata <-traindata[-which(traindata$x3 %in% c(96, 98)), ]

 

unique(traindata$x7)

traindata <-traindata[-which(traindata$x7 %in% c(96, 98)), ]

 

#当把x3x7中的异常值删除后,x9中的异常值也被删除了

unique(traindata$x9)

 

 

2、离群点

1)、检测方法:boxplot(箱线图)和k-means检测

2)、处理方法:①与该领域专家研究确定,可能属于正常情况,此时应保留这些值;②可能是离群点,在建模时删除这些值;③数据重构不需要删除离群点,使用记录中的均值或中位数进行替换。

 

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值