Coleção multivariada
Agrupamento
Agrupamento hierárquico (UPGMA, Ward, completo, simples) ou k-means, com corte em k grupos e correlação cofenética.
O que o bloco faz
O bloco multi/cluster junta os indivíduos em grupos. Recebe a tabela (entrada dados, distância euclidiana nas variáveis) ou uma matriz do multi/distance (entrada distancia). O card é o dendrograma com o corte.
Antes de continuar
Termos que esta página usa, em poucas palavras. As definições completas estão no glossário.
- Variância
- A média dos quadrados das distâncias de cada valor à média: mede o quanto os dados se espalham. O desvio padrão é a raiz quadrada da variância e fica na mesma unidade dos dados.
- Repetição
- Cada unidade experimental que recebe o mesmo tratamento. As repetições permitem estimar o erro experimental; medir várias vezes a mesma unidade não é repetição.
- Distância e dissimilaridade
- Uma medida de quão diferentes são duas observações quando consideradas todas as variáveis ao mesmo tempo. A escolha da distância (euclidiana, de Mahalanobis, de Gower) muda quem fica perto de quem no agrupamento.
- Análise de agrupamento
- Métodos que reúnem observações parecidas em grupos sem que os grupos sejam conhecidos de antemão. O resultado depende da distância, do método de ligação e do número de grupos escolhido.
Quando usar
Diversidade genética entre genótipos, tipologia de propriedades, qualquer pergunta de “quem se parece com quem”.
Pressupostos
Cada linha é um indivíduo (um genótipo, um acesso): com repetições do experimento, resuma antes (média por genótipo).
Verificar:Agrupar e resumir
As variáveis estão numa escala comparável, ou a distância cuida disso: na euclidiana crua a variável de maior variância domina; a padronizada, a Mahalanobis e a Gower corrigem.
Se falhar: Use a
euclidiana padronizada(ou Padronizar ligado no agrupamento).A ligação combina com a distância: o Ward supõe distância euclidiana (sobre Mahalanobis usa a raiz do D²; sobre Gower é aproximado); UPGMA, completo e simples aceitam qualquer dissimilaridade.
Verificar:Matriz de distância
O dendrograma representa bem a matriz: correlação cofenética acima de ~0,7 (Sokal & Rohlf 1962). Abaixo disso, os grupos do corte dizem pouco sobre as distâncias reais.
Verificar:Dendrograma
Se falhar: Troque a ligação (o UPGMA costuma dar a maior cofenética) ou leia a matriz direto no mapa de calor do
multi/distance.O número de grupos é uma escolha, não uma estimativa: nenhum teste aqui diz que há k grupos. Todo agrupamento acha grupos, até em dados sem estrutura.
Verificar:DendrogramaTocher
Se falhar: Corte onde os ramos são longos, e confira se o Tocher na mesma matriz dá grupos parecidos.
No k-means, os grupos são aproximadamente esféricos e de tamanhos parecidos, e o ótimo é LOCAL (por isso 25 partidas e a semente do nó).
Configuração
- Variáveis, Padronizar, Rótulo das linhas — só quando parte da tabela.
- Método —
UPGMA(ligação média, o mais usado em melhoramento),Ward.D2,completo,simplesouk-means(só a partir da tabela, com a semente do nó). - Grupos — o k do corte.
Com Mahalanobis, o UPGMA usa o D² (como nas teses) e o Ward usa D, a raiz, porque o Ward já eleva ao quadrado. Com Gower, o Ward é aproximado: a Gower não é euclidiana.
Exemplo
tr_flow(reg) |>
tr_add("usa", "multi/example", dataset = "USArrests") |>
tr_add("d", "multi/distance", rotulo = "nome", from = "usa") |>
tr_add("ag", "multi/cluster", metodo = "UPGMA", grupos = 4L, from = "d")Como interpretar
A correlação cofenética (no subtítulo e no resumo) mede quanto a árvore preserva as distâncias; acima de 0,7 é boa representação. Ligado numa tabela, o agrupamento vira os dados com a coluna grupo (G1, G2…).
Implementação
stats::hclust()versão 4.6.0average,ward.D2,complete,single; cofenética porstats::cophenetic, corte porstats::cutree. Alturas de fusão conferidas contracluster::agnesnas quatro ligações (1e-10).stats::kmeans()versão 4.6.0Hartigan-Wong,nstart = 25,iter.max = 100.
No código O bloco chama trama.multi::tr_multi_cluster(), em trama.multi/R/agrupamento.R:249.
A conta é feita nestas chamadas:
stats::kmeans(X, centers = k, nstart = 25L, iter.max = 100L)stats::hclust(dd, method = .TR_MULTI_LIGACOES[[metodo]])
Outras funções de pacotes que o bloco usa (11)
stats::complete.cases(X)stats::as.dist(as.matrix(cluster::daisy(X, metric = "gower")))cluster::daisy(X, metric = "gower")stats::complete.cases(m)stats::dist(X)stats::cor(m)stats::dist(X %*% solve(chol(stats::cov(X))))stats::cov(X)stats::cor(as.vector(stats::cophenetic(h)), as.vector(dd))stats::cophenetic(h)stats::cutree(h, k = k)
Referências
Teoria
- Lance, G. N.; Williams, W. T. (1967). A general theory of classificatory sorting strategies: 1. Hierarchical systems. The Computer Journal, 9(4), 373-380. doi:10.1093/comjnl/9.4.373
- Ward, J. H. (1963). Hierarchical grouping to optimize an objective function. Journal of the American Statistical Association, 58(301), 236-244. doi:10.1080/01621459.1963.10500845
- Sokal, R. R.; Rohlf, F. J. (1962). The comparison of dendrograms by objective methods. Taxon, 11(2), 33-40. doi:10.2307/1217208
- Hartigan, J. A.; Wong, M. A. (1979). Algorithm AS 136: a k-means clustering algorithm. Applied Statistics, 28(1), 100-108. doi:10.2307/2346830
Livro-texto
- Cruz, C. D.; Regazzi, A. J.; Carneiro, P. C. S. (2012). Modelos biométricos aplicados ao melhoramento genético. v. 1, 4. ed. Viçosa: Editora UFV (ISBN 978-85-7269-433-9).
- Johnson, R. A.; Wichern, D. W. (2007). Applied Multivariate Statistical Analysis. 6. ed. Upper Saddle River: Pearson Prentice Hall.
Complementar
- Murtagh, F.; Legendre, P. (2014). Ward's hierarchical agglomerative clustering method: which algorithms implement Ward's criterion?. Journal of Classification, 31(3), 274-295. doi:10.1007/s00357-014-9161-z