一、作业要求:
1、利用基于距离的方法对 iris 数据第 51 至 100 行进行异常点分析;
2、利用局部异常点发现方法对 iris 数据第 1 至 100 行进行异常点分析
3、对 CARMA 算法进行评价。
二、数据描述
iris 数据集有 150 个数据组成,没 50 个数据为一类,分别是 setosa、versicolor、virginica,
每类有四个属性:Sepal.Length、Sepal.Width、Petal.Length、Petal.Width。
三、数据分析
iris 数据的分析:
Sepal.Length
Min.
1st Qu.
Median
Mean
3rd Qu.
Max.
iris 数据各点的分布情况
4.300
5.100
5.800
5.843
6.400
7.900
Sepal.Width
2.000
2.800
3.000
3.057
3.300
4.400
Petal.Length
1.000
1.600
4.350
3.758
5.100
6.900
Petal.Width
0.100
0.300
1.300
1.199
1.800
2.500
0
4
.
0
3
.
0
2
.
5
2
.
5
1
.
5
0
.
2.0
3.0
4.0
0.5
1.5
2.5
Sepal.Length
Sepal.Width
Petal.Length
Petal.Width
Species
4.5
6.0
7.5
1
3
5
7
1.0
2.0
3.0
5
7
.
0
6
.
5
4
.
7
5
3
1
0
3
.
0
2
.
0
1
.
.
5
2
.
0
2
.
5
1
.
0
1
.
5
0
t
h
d
W
i
.
l
t
a
e
P
setosa
versicolor
Species
virginica
四、异常点发现:
1、51 至 100 行基于距离的异常点。
基于马氏距离来获得异常点,样本点 Mahalanobis 距离公式为;
,
T
y
)
1
(
x
y
)
)
(
S
d x y
异常点为第 69 ,99 ,19,49 个点。
x
(
2、利用局部异常点发现方法对 iris 数据第 1 至 100 行进行异常点分析
R 中 DMwR 软件包来做 LOF 算法,来求出 1 至 100 行的异常点检测。
当 k 选取不值是比较显示第 60,23,63 为异常点。
install.packages('DMwR')
library(DMwR)
lofactor(iris,k)
3、对 CARMA 算法进行评价。
carma 算法分为两个阶段 phaseI、phaseII。在第一个阶段生成潜在的频繁项集的集合;第二
个阶段是把第一个阶段中产生的结果进行删减最终得到结果。算法的核心在第一阶段。
carma 算法是一种比较新颖的关联规则的算法,有以下几点优点:① carma 算法只需要遍历
事务数据两次节省了内存。②能够在算法执行时反馈部分计算结果,给用户做参考。③算法
能够处理在线的连续交易数据流,可以容纳更大量的数据。④用户能根据产生的部分结果,
通过控制阀值来控制算法如何进行下去。
附录:
程序:> IRIS=iris
> IRIS
> summary(IRIS)
> NAME=names(IRIS)
> D=as.matrix(IRIS)
> temp=D[51:100,]
> E=as.data.frame(temp)
> plot(iris[5:4])
> plot(iris)
> DAT=iris[51:100,1:4]
> CENTER=colMeans(DAT)
> CO=cov(DAT)
> temp=mahalanobis(DAT,CENTER,CO)
> ch=qchisq(c(0.975,0.975),df=3)
> outlier=which(temp>ch[1])
> outlier
69 99
19 49