手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

R软件如何标记数据异常点

时间:2024-10-13 01:01:50

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

R软件如何标记数据异常点

2、绘制出箱线图,可以看出有两个异常点。我们把它们的位置找出来,异常点是第2和第14个数据。代码:#根据箱线图检测出异常点的位置boxplot(a)(b<- which(a %in% boxplot.stats(a)$out))

R软件如何标记数据异常点
R软件如何标记数据异常点

3、绘制时间序列a的散点图,并在图中标记出在箱线图之外的异常点,即b位置上的点。#在散点图中标出异常点plot(a)points(time(a)[b], a[b],pch=13, col="red",cex=1.5)

R软件如何标记数据异常点

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])

R软件如何标记数据异常点

5、画出聚类后的散点图,对不同的类别使用不同的颜色。可以看出,分类结果已将箱线图外的异常点分为了一类。plot(1:length(a),a, pch="o",col=kmeans.result$cluster, cex=1.0)

R软件如何标记数据异常点

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

R软件如何标记数据异常点
© 手抄报圈