Exemplo: Experimento sem repetições

Alcinei Mistico Azevedo (ICA-UFMG)

2024-04-08

Ativando o pacote

Após a instalação do pacote é preciso ativa-lo. Para isso, deve-se utilizar a função library ou require

library(MultivariateAnalysis)

Abrindo o conjunto de dados

Posteriormente, deve-se carregar no R o conjunto de dados a serem analizados. Isso pode ser feito de diferentes formas.

Uma possibilidade é utilizando a função read.table. Neste exemplo vamos trabalhar com o banco de dados do pacote, o qual pode ser carregado com a função data.

Este exemplo trata-se de dados binarios vindo do uso de marcadores moleculares em cinco individuos.

data("Dados.MED")
Dados.MED
#>    X1Contagem Germ SemAnormais SemMortas Retencao75 Retencao55 RetencaoFundo
#> 1        87.0 91.5    2.711049  1.618034   16.19171   4.933229      1.728398
#> 2        86.0 94.5    2.277463  1.492030   16.34301   6.626048      1.103553
#> 3        84.5 95.0    2.212485  1.366025   15.96484   5.019994      1.103553
#> 4        86.0 94.5    2.220455  1.366025   16.22250   6.217927      1.103553
#> 5        89.5 91.0    3.103652  1.000000   16.47550   6.903874      1.743673
#> 6        82.0 86.0    3.089793  2.331754   16.61819   8.003092      1.000000
#> 7        87.0 92.0    2.529472  1.594451   16.52787   7.286887      1.103553
#> 8        82.0 88.0    3.322876  1.309017   16.94664   5.948805      1.207107
#> 9        86.0 91.0    2.813470  1.594451   16.38352   6.966117      1.286566
#> 10       90.0 92.5    2.460405  1.309017   16.34252   6.254230      1.640119

Obtenção de medidas de dissimilaridade

Muitas são as opções que este pacote oferece de medidas de dissimilaridade. Convidamos os usuários a ler o manual da funcao Distancia (?Distancia).

Para se ter diferentes medidas de dissimilaridade basta colocar o respectivo numero no argumento Metodo dentro da função Distancia:

Dados quantitativos

1 = Distancia euclidiana.

2= Distancia euclidiana media.

3 = Quadrado da distancia euclidiana media.

4 = Distancia euclidiana padronizada.

5 = Distancia euclidiana padronizada media.

6 = Quadrado da distancia euclidiana padronizada media.

7 = Distancia de Mahalanobis.

8 = Distancia de Cole Rodgers.

#colocando nome nos individuos
rownames(Dados.MED)=paste0("T",1:nrow(Dados.MED))
Dist=Distancia(Dados.MED,Metodo = 5)
round(Dist$Distancia,3)
#>        T1    T2    T3    T4    T5    T6    T7    T8    T9
#> T2  1.234                                                
#> T3  1.187 0.871                                          
#> T4  1.180 0.277 0.637                                    
#> T5  1.218 1.450 1.849 1.488                              
#> T6  2.119 1.860 2.361 2.044 2.199                        
#> T7  1.338 0.577 1.366 0.800 1.260 1.470                  
#> T8  1.712 1.699 2.041 1.795 1.586 1.518 1.443            
#> T9  1.041 0.748 1.305 0.885 1.056 1.372 0.474 1.269      
#> T10 0.834 0.987 1.337 0.983 0.804 2.221 1.007 1.833 0.929

Informações importantes podem ser obtidas dessa matriz com a função SummaryDistancia:

resumo=SummaryDistancia(Dist)

resumo
#> _________________________________________________________________________ 
#> Tabela com o resumo da matriz dissimilaridade 
#>     Medio Minimo Maximo   sd MaisProximo MaisDistante
#> T1   1.32   0.83   2.12 0.38         T10           T6
#> T2   1.08   0.28   1.86 0.53          T4           T6
#> T3   1.44   0.64   2.36 0.55          T4           T6
#> T4   1.12   0.28   2.04 0.57          T2           T6
#> T5   1.43   0.80   2.20 0.42         T10           T6
#> T6   1.91   1.37   2.36 0.37          T9           T3
#> T7   1.08   0.47   1.47 0.38          T9           T6
#> T8   1.65   1.27   2.04 0.23          T9           T3
#> T9   1.01   0.47   1.37 0.29          T7           T6
#> T10  1.21   0.80   2.22 0.49          T5           T6
#> 
#> Menor Distancia: 0.2770865 
#> Maior Distancia: 2.361072 
#> Media das Distancias: 1.325796 
#> Amplitude das Distancias: 2.083985 
#> Desvio Padrao das Distancias: 0.4977648 
#> Coeficiente de variacao das Distancias: 37.54459 
#> Individuos mais proximos: T2 T4 
#> Individuos mais distantes: T3 T6 
#> _________________________________________________________________________

A fim de resumir as informações da matriz de dissimilaridade a fim de melhorar a visualização da dissimilaridade, pode-se fazer um Dendrograma com o auxilio da função Dendrograma. Varios algoritimos podem ser utilizados para a construção deste Dendrograma. Para isso, deve-se indicar no argumento Metodo:

1 = Ligacao simples (Metodo do vizinho mais proximo).

2 = Ligacao completa (Metodo do vizinho distante).

3 = Ligacao media entre grupo (UPGMA).

4 = Metodo de Ward.

5 = Metodo de ward (d2).

6= Metodo da mediana (WPGMC).

7= Metodo do centroide (UPGMC).

8 = Metodo mcquitty (WPGMA).

#Dendrograma com o metodo UPGMA
Dendrograma(Dist,Metodo=3)

#> _________________________________________________________________________ 
#> Estimativa de correlacao cofenetica: 
#> [1] 0.8523306
#> Significancia da correlacao cofenetica pelo teste Mantel 
#> pvalor: 0.001 
#> Hipotese alternativa: A correlacao e maior que 0 
#> 
#> Criterio de Corte 
#>  k=1.25 
#> 1.59859 
#> 
#> Agrupamentos 
#>     Cluster
#> T1        1
#> T2        1
#> T3        1
#> T4        1
#> T5        1
#> T6        2
#> T7        1
#> T8        2
#> T9        1
#> T10       1
#> _________________________________________________________________________

Adcionalmente, pode-se fazer o agrupamento Tocher com o auxilio da função Tocher:

#Dendrograma com o metodo UPGMA
Tocher(Dist)

#> _________________________________________________________________________ 
#> Agrupamento Tocher 
#> Cluster1: 
#> T2 T4 T7 T9 T10 T3 T1 T5 
#> 
#> Cluster2: 
#> T6 
#> 
#> Cluster3: 
#> T8 
#> 
#> Distancia intra e intercluster: 
#>          Cluster1 Cluster2 Cluster3
#> Cluster1 1.040023 1.955726 1.672033
#> Cluster2 1.955726 0.000000 1.518127
#> Cluster3 1.672033 1.518127 0.000000
#> 
#> 
#> Correlacao Cofenetica: 0.7696111 
#> pvalor: 0.01 baseado no teste Mantel 
#> Hipotese alternativa: A correlacao e maior que 0 
#> _________________________________________________________________________

Outra possibilidade é o estudo da dispersão da matriz de dissimilaridade pelas técnica de coordenadas principais, mas veja que ela é correspondente aos componentes principais quando se utiliza a distancia euclidiana:


COp=CoordenadasPrincipais(Dist,main = "")
#> [1] 1

CoordenadasPrincipais(Dist)
#> [1] 1

#> $values
#>  [1] 4.491718e+00 2.366598e+00 1.151194e+00 8.187457e-01 1.459765e-01
#>  [6] 1.807946e-02 7.688523e-03 8.901369e-17 0.000000e+00 0.000000e+00
#> 
#> $vectors
#>             X1           X2          X3          X4          X5           X6
#> T1   0.4282280 -0.313698426  0.34387831  0.60651615  0.09961776  0.043611731
#> T2   0.2992957  0.432394896 -0.16829809 -0.21951305  0.07415144  0.086655414
#> T3   0.7775888  0.627978568  0.42763702  0.03956147 -0.15250258 -0.041340385
#> T4   0.4969843  0.444673656 -0.03374901 -0.20128506 -0.01235869 -0.021123670
#> T5   0.1589410 -0.978031491 -0.22014316 -0.14050902 -0.20519743  0.009485604
#> T6  -1.4572936  0.416471042 -0.21839937  0.36505527 -0.05149491 -0.023475614
#> T7  -0.1504424  0.182350974 -0.38773011 -0.21099132  0.12143018 -0.009930074
#> T8  -0.9187556 -0.360689094  0.68880938 -0.38888233  0.08489360 -0.006029379
#> T9  -0.1945219 -0.009058457 -0.15971681  0.05763115 -0.11993801  0.031176053
#> T10  0.5599754 -0.442391668 -0.27228816  0.09241674  0.16139864 -0.069029679
#>               X7            X8 X9 X10
#> T1   0.012349853  0.000000e+00  0   0
#> T2  -0.030811467 -3.033992e-17  0   0
#> T3   0.015928941 -3.043002e-17  0   0
#> T4  -0.027760268  1.862443e-17  0   0
#> T5  -0.005315811 -4.375586e-19  0   0
#> T6  -0.021420458 -1.099523e-17  0   0
#> T7   0.063343703 -2.596874e-18  0   0
#> T8  -0.002664980 -2.317652e-17  0   0
#> T9   0.021077355 -5.550049e-17  0   0
#> T10 -0.024726868 -4.455093e-17  0   0
#> 
#> attr(,"class")
#> [1] "pcoa"
ComponentesPrincipais(Dados.MED)

#> $`Autovalor da matriz de covariancia`
#> [1] 3.4936 1.8407 0.8954 0.6368 0.1135 0.0141 0.0060
#> 
#> $`Autovetor da matriz de covariancia`
#>         [,1]    [,2]    [,3]    [,4]    [,5]    [,6]    [,7]
#> [1,] -0.3587  0.3871 -0.5429  0.0533 -0.2356  0.2281  0.5624
#> [2,] -0.4930 -0.2190 -0.0680 -0.2797 -0.0202 -0.7838  0.1067
#> [3,]  0.4091  0.4345  0.2058  0.0466  0.4720 -0.3574  0.4988
#> [4,]  0.3344 -0.3781 -0.2023  0.6802 -0.3444 -0.2953  0.1892
#> [5,]  0.4385  0.2653  0.0478 -0.4712 -0.6944 -0.1725 -0.0330
#> [6,]  0.3411 -0.0281 -0.7842 -0.2093  0.3362 -0.1151 -0.3127
#> [7,] -0.2012  0.6319 -0.0085  0.4338 -0.0868 -0.2750 -0.5374
#> 
#> $`Escores dos componentes principais`
#>        [,1]    [,2]    [,3]    [,4]    [,5]    [,6]    [,7]
#> T1  -1.1330  0.8300  0.9098  1.6047 -0.2636 -0.1154  0.0327
#> T2  -0.7919 -1.1440 -0.4453 -0.5808 -0.1962 -0.2293 -0.0815
#> T3  -2.0573 -1.6615  1.1314  0.1047  0.4035  0.1094  0.0421
#> T4  -1.3149 -1.1765 -0.0893 -0.5326  0.0327  0.0559 -0.0734
#> T5  -0.4205  2.5876 -0.5824 -0.3718  0.5429 -0.0251 -0.0141
#> T6   3.8556 -1.1019 -0.5778  0.9658  0.1362  0.0621 -0.0567
#> T7   0.3980 -0.4825 -1.0258 -0.5582 -0.3213  0.0263  0.1676
#> T8   2.4308  0.9543  1.8224 -1.0289 -0.2246  0.0160 -0.0071
#> T9   0.5147  0.0240 -0.4226  0.1525  0.3173 -0.0825  0.0558
#> T10 -1.4816  1.1705 -0.7204  0.2445 -0.4270  0.1826 -0.0654
#> 
#> $`Correlacao entre as variaveis e os comp. principais`
#>                  [,1]    [,2]    [,3]    [,4]    [,5]    [,6]    [,7]
#> X1Contagem    -0.6705  0.5252 -0.5137  0.0426 -0.0794  0.0270  0.0435
#> Germ          -0.9214 -0.2972 -0.0643 -0.2232 -0.0068 -0.0929  0.0083
#> SemAnormais    0.7646  0.5894  0.1947  0.0372  0.1590 -0.0424  0.0386
#> SemMortas      0.6250 -0.5129 -0.1914  0.5428 -0.1160 -0.0350  0.0146
#> Retencao75     0.8197  0.3599  0.0452 -0.3760 -0.2340 -0.0205 -0.0025
#> Retencao55     0.6375 -0.0381 -0.7421 -0.1670  0.1133 -0.0137 -0.0242
#> RetencaoFundo -0.3761  0.8573 -0.0080  0.3461 -0.0292 -0.0326 -0.0416
#> 
#> $`Explicacao dos componentes principais`
#>                           [,1]    [,2]    [,3]    [,4]    [,5]    [,6]     [,7]
#> Autovalor               3.4936  1.8407  0.8954  0.6368  0.1135  0.0141   0.0060
#> % Explicacao           49.9080 26.2955 12.7910  9.0972  1.6220  0.2009   0.0854
#> % Explicacao Acumulada 49.9080 76.2035 88.9946 98.0917 99.7137 99.9146 100.0000
#> 
#> attr(,"class")
#> [1] "ComponentesPrincipais"

Logo, quando se tem dados quantitativos faz mais sentido utilizar os componentes principais que coordenadas principais em situações quando irá se considerar a distância euclidiana padronizada.