Exemplo: Experimento sem repetições

Alcinei Mistico Azevedo (ICA-UFMG)

2021-09-27

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)

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 dendograma com o auxilio da função dendograma. Varios algoritimos podem ser utilizados para a construção deste dendograma. 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).

#Dendograma com o metodo UPGMA
Dendograma(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 
#> 
#> Ponto de corte pelo metodo Mojena 
#>   k=1.25      k=2 
#> 1.598590 1.962311 
#> _________________________________________________________________________

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

#Dendograma 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.011 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 = "")

CoordenadasPrincipais(Dist,Dados = Dados.MED,Padronizar = TRUE,main="")

#> $correction
#> [1] "none" "1"   
#> 
#> $note
#> [1] "There were no negative eigenvalues. No correction was applied"
#> 
#> $values
#>   Eigenvalues Relative_eig Broken_stick Cumul_eig Cumul_br_stick
#> 1 4.491717782 0.4990797535   0.37040816 0.4990798      0.3704082
#> 2 2.366598461 0.2629553846   0.22755102 0.7620351      0.5979592
#> 3 1.151193547 0.1279103941   0.15612245 0.8899455      0.7540816
#> 4 0.818745739 0.0909717488   0.10850340 0.9809173      0.8625850
#> 5 0.145976484 0.0162196093   0.07278912 0.9971369      0.9353741
#> 6 0.018079464 0.0020088294   0.04421769 0.9991457      0.9795918
#> 7 0.007688523 0.0008542803   0.02040816 1.0000000      1.0000000
#> 
#> $vectors
#>         Axis.1       Axis.2      Axis.3      Axis.4      Axis.5       Axis.6
#> 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
#>           Axis.7
#> T1  -0.012349853
#> T2   0.030811467
#> T3  -0.015928941
#> T4   0.027760268
#> T5   0.005315811
#> T6   0.021420458
#> T7  -0.063343703
#> T8   0.002664980
#> T9  -0.021077355
#> T10  0.024726868
#> 
#> $trace
#> [1] 9
#> 
#> 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

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.