R软件如何标记数据异常点
1、输入或者读取数据。本例选取东方财富网2015年12月-2017年7月当月的新增信贷数据。改数据是一个时间序坐逃缥卯列。代码如下:New_credit<-c(8323.08,25370.07,8105.44,13175.56,5642.05,9374.27,13141,4550,7969,12628,6010,8463,9943,23132.85,10317.32,11586.06,10805.69,11780.36,14474,8255)#生成时间序列a<-ts(New_credit, frequency=12,start=c(2015,12));a


4、我们棵褶佐峨还可以将数据聚类后进行异常点标记。首先将数据按照K-means聚类方法分为3类,然后计算各个类别与中心点的距离,最后根据这个距离找出各类的异常点。代码如下:#聚类异常点标记kmeans.result<-kmeans(a, centers=3) #将数据a分为3类kmeans.result$centers #各类的中心点kmeans.result$cluster #各个点的类别#列出各个点对应的中心点centers_a<-kmeans.result$centers[kmeans.result$cluster,]#计算各点与中心点的距离distances<-sqrt((a-centers_a)^2)#计算各类别距离中心点最大的两个点outliers<-order(distances,decreasing=T)[1:2]print(a[outliers])

6、标记出中心点和相对于中心点的异常点位置。#标出各类的中心点points(kmeans.result$centers, col=1:3, pch=8, cex=1.8)#标出各类别距离中心点最大的两个点points(outliers,a[outliers],pch=13, col=6, cex=2.0)
