當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R mona 二元變量的單論分析聚類


R語言 mona 位於 cluster 包(package)。

說明

返回一個列表,表示僅包含二進製變量的數據集的分裂層次聚類。

用法

mona(x, trace.lev = 0)

參數

x

數據矩陣或 DataFrame ,其中每行對應一個觀察值,每列對應一個變量。所有變量必須是二進製的。允許有限數量的缺失值 (NA s)。每個觀察值必須至少有一個不同於 NA 的值。任何變量都不應缺少一半的值。必須至少有一個變量沒有缺失值。不允許所有非缺失值都相同的變量。

trace.lev

邏輯或整數,指示算法是否(以及多少)應產生進度輸出。

細節

mona 在 Kaufman 和 Rousseuw (1990) 的第 7 章中有完整說明。它是“monothetic”,因為每個劃分都基於單個(well-chosen)變量,而大多數其他分層方法(包括agnesdiana)是“polythetic”,即它們一起使用所有變量。

mona-算法從一個大集群開始構建集群層次結構。聚類被劃分,直到同一聚類中的所有觀測值的所有變量都具有相同的值。
在每一階段,所有簇都根據一個變量的值進行劃分。聚類分為一個聚類,其中該變量的所有觀測值均為 1,另一個聚類的所有觀測值對該變量的值為 0。

根據要分割的聚類中的觀察結果,用於分割聚類的變量是與其他變量具有最大總關聯性的變量。變量 f 和 g 之間的關聯由 a(f,g)*d(f,g) - b(f,g)*c(f,g) 給出,其中 a(f,g), b(f, g)、c(f,g) 和 d(f,g) 是 f 和 g 列聯表中的數字。 [也就是說,a(f,g)(分別為 d(f,g))是 f 和 g 均值為 0(分別為 1)的觀測值的數量; b(f,g)(分別為 c(f,g))是 f 值為 0(分別為 1)且 g 值為 1(分別為 0)的觀測值的數量。] 變量的總關聯f 是其與所有變量的關聯之和。

代表聚類的 "mona" 類的對象。有關詳細信息,請參閱mona.object

缺失值(NA s)

mona-algorithm 需要 “pure” 0-1 值。但是,mona(x) 允許x 包含(不是太多)NA。在初步步驟中,這些是“imputed”,即填充所有缺失值。為此,使用與算法中相同的變量之間關聯度量。當變量f有缺失值時,查找與f具有最大絕對關聯的變量g。當 f 和 g 之間的關聯為正時,f 的任何缺失值都將替換為同一觀測值的 g 值。如果 f 和 g 之間的關聯為負,則 f 的任何缺失值都將替換為同一觀測值的 1-g 值。

注意

cluster 2.0.6 之前的版本中,算法在一個變量(即 ncol(x) == 1 )的邊界情況下進入無限循環,當前發出錯誤信號(因為現在的 C 算法沒有正確考慮到這一點)特例)。

例子

data(animals)
ma <- mona(animals)
ma
## Plot similar to Figure 10 in Struyf et al (1996)
plot(ma)

## One place to see if/how error messages are *translated* (to 'de' / 'pl'):
ani.NA   <- animals; ani.NA[4,] <- NA
aniNA    <- within(animals, { end[2:9] <- NA })
aniN2    <- animals; aniN2[cbind(1:6, c(3, 1, 4:6, 2))] <- NA
ani.non2 <- within(animals, end[7] <- 3 )
ani.idNA <- within(animals, end[!is.na(end)] <- 1 )
try( mona(ani.NA)   ) ## error: .. object with all values missing
try( mona(aniNA)    ) ## error: .. more than half missing values
try( mona(aniN2)    ) ## error: all have at least one missing
try( mona(ani.non2) ) ## error: all must be binary
try( mona(ani.idNA) ) ## error:  ditto

也可以看看

agnes 用於背景和參考; mona.objectplot.mona

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 MONothetic Analysis Clustering of Binary Variables。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。