diana
位于 cluster
包(package)。 说明
计算数据集的分裂层次聚类,返回类 diana
的对象。
用法
diana(x, diss = inherits(x, "dist"), metric = "euclidean", stand = FALSE,
stop.at.k = FALSE,
keep.diss = n < 100, keep.data = !diss, trace.lev = 0)
参数
x |
数据矩阵或 DataFrame ,或相异矩阵或对象,具体取决于 对于矩阵或 DataFrame ,每行对应一个观察值,每列对应一个变量。所有变量都必须是数字。允许缺失值 ( 在相异矩阵的情况下, |
diss |
逻辑标志:如果为 TRUE( |
metric |
字符串,指定用于计算观测值之间差异的度量。 |
stand |
逻辑性;如果为真,则在计算差异之前对 |
stop.at.k |
逻辑或整数,默认为 |
keep.diss , keep.data |
逻辑指示是否应将差异和/或输入数据 |
trace.lev |
指定算法期间打印诊断的跟踪级别的整数。默认 |
细节
diana
在 Kaufman 和 Rousseuw (1990) 的第 6 章中有完整说明。它在计算分裂层次结构方面可能是独一无二的,而大多数其他用于层次聚类的软件都是聚合的。此外,diana
提供了(a)除法系数(参见diana.object
),用于测量找到的聚类结构的数量; (b) 横幅,一种新颖的图形显示(参见plot.diana
)。
diana
- 算法构建一个聚类层次结构,从包含所有 n 个观察值的一个大聚类开始。聚类被划分,直到每个聚类仅包含一个观察值。
在每个阶段,选择直径最大的簇。 (簇的直径是其任意两个观测值之间最大的差异。)
为了划分所选簇,该算法首先寻找其最不同的观测值(即,与所选簇的其他观测值具有最大的平均差异)。此观察启动"splinter group"。在后续步骤中,算法会重新分配更接近 "splinter group" 而非 "old party" 的观测值。结果是将所选簇划分为两个新簇。
值
代表聚类的"diana"
类的对象;此类具有以下通用函数的方法: print
、 summary
、 plot
。
此外,类"diana"
继承自"twins"
。因此,泛型函数pltree
可用于diana
对象,并且as.hclust
和as.dendrogram
方法可用。
合法的 diana
对象是包含以下组件的列表:
order |
一个向量,给出原始观察值的排列以允许绘图,从某种意义上说,聚类树的分支不会交叉。 |
order.lab |
类似于 |
height |
具有分裂前簇直径的向量。 |
dc |
分裂系数,衡量数据集的聚类结构。对于每个观测值 i,用 |
merge |
(n-1) x 2 矩阵,其中 n 是观测值的数量。 |
diss |
类 |
data |
包含原始或标准化测量值的矩阵,具体取决于函数 |
例子
data(votes.repub)
dv <- diana(votes.repub, metric = "manhattan", stand = TRUE)
print(dv)
plot(dv)
## Cut into 2 groups:
dv2 <- cutree(as.hclust(dv), k = 2)
table(dv2) # 8 and 42 group members
rownames(votes.repub)[dv2 == 1]
## For two groups, does the metric matter ?
dv0 <- diana(votes.repub, stand = TRUE) # default: Euclidean
dv.2 <- cutree(as.hclust(dv0), k = 2)
table(dv2 == dv.2)## identical group assignments
str(as.dendrogram(dv0)) # {via as.dendrogram.twins() method}
data(agriculture)
## Plot similar to Figure 8 in ref
## Not run: plot(diana(agriculture), ask = TRUE)
也可以看看
agnes
也可用于背景和参考; cutree
(和 as.hclust
)用于分组提取; daisy
、dist
、plot.diana
、twins.object
。
相关用法
- R daisy 相异矩阵计算
- R summary.clara “clara”对象的摘要方法
- R pluton 钚同位素成分批次
- R votes.repub 总统选举中共和党候选人的投票
- R agnes 凝聚嵌套(层次聚类)
- R print.mona MONA 对象的打印方法
- R print.clara CLARA 对象的打印方法
- R mona 二元变量的单论分析聚类
- R plot.diana 分裂层次聚类图
- R plot.mona 一元分裂层次聚类的旗帜
- R bannerplot 绘图横幅(层次聚类)
- R plot.partition 数据集分区图
- R summary.agnes “agnes”对象的摘要方法
- R pltree 绘制层次聚类的聚类树
- R summary.mona “mona”对象的摘要方法
- R plantTraits 植物物种性状数据
- R plot.agnes 凝聚层次聚类图
- R print.agnes AGNES 对象的打印方法
- R chorSub Kola 数据 C 范围的子集
- R pam 围绕 Medoid 进行分区
- R volume.ellipsoid 计算(椭球体的)体积
- R clusplot (分区对象的)双变量聚类图
- R print.pam PAM 对象的打印方法
- R clara 集群大型应用程序
- R agnes.object 聚合嵌套 (AGNES) 对象
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 DIvisive ANAlysis Clustering。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。