Após a instalação do pacote é preciso ativa-lo. Para isso, deve-se utilizar a função library
ou require
library(MultivariateAnalysis)
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.DIC")
Dados.DIC#> trat bloco X1Contagem Germ SemAnormais SemMortas Retencao75 Retencao55
#> 1 Trat1 1 82 90 3.316625 1.000000 16.49242 5.567764
#> 2 Trat2 1 80 98 1.732051 1.732051 15.96872 5.000000
#> 3 Trat3 1 66 96 2.236068 1.000000 16.27882 4.898979
#> 4 Trat4 1 80 96 2.236068 1.000000 15.96872 3.872983
#> 5 Trat5 1 86 92 3.000000 1.000000 16.55295 11.532563
#> 6 Trat1 2 84 96 2.236068 1.000000 16.58312 6.403124
#> 7 Trat2 2 86 94 2.645751 1.000000 16.55295 4.690416
#> 8 Trat3 2 62 76 5.000000 1.000000 16.85230 5.744563
#> 9 Trat4 2 82 94 2.645751 1.000000 16.06238 8.062258
#> 10 Trat5 2 88 92 3.000000 1.000000 16.18641 4.795832
#> 11 Trat1 3 92 92 2.236068 2.236068 16.40122 4.582576
#> 12 Trat2 3 84 92 3.000000 1.000000 17.00000 4.898979
#> 13 Trat3 3 100 92 2.645751 1.732051 15.45962 4.795832
#> 14 Trat4 3 82 94 2.645751 1.000000 16.09348 6.324555
#> 15 Trat5 3 94 94 2.645751 1.000000 16.12452 6.928203
#> 16 Trat1 4 84 88 3.000000 2.236068 16.82260 7.681146
#> 17 Trat2 4 84 86 3.000000 2.645751 16.09348 9.949874
#> 18 Trat3 4 86 94 2.645751 1.000000 17.29162 5.291503
#> 19 Trat4 4 92 92 2.645751 1.732051 16.18641 7.874008
#> 20 Trat5 4 92 96 2.236068 1.000000 16.52271 6.708204
#> 21 Trat1 5 86 94 2.645751 1.000000 15.77973 5.000000
#> 22 Trat2 5 90 98 1.732051 1.000000 16.12452 5.291503
#> 23 Trat3 5 90 96 2.236068 1.000000 15.81139 5.385165
#> 24 Trat4 5 98 98 1.000000 1.732051 16.12452 6.928203
#> 25 Trat5 5 94 94 2.645751 1.000000 16.79286 4.795832
#> 26 Trat1 6 66 66 4.123106 4.358899 16.91153 7.681146
#> 27 Trat2 6 92 96 2.236068 1.000000 16.88194 6.633250
#> 28 Trat3 6 92 94 2.645751 1.000000 16.61325 5.830952
#> 29 Trat4 6 86 88 2.645751 2.645751 16.49242 6.928203
#> 30 Trat5 6 88 100 6.605551 11.000000 15.42725 15.164414
#> RetencaoFundo
#> 1 1.732051
#> 2 1.414214
#> 3 1.000000
#> 4 1.414214
#> 5 2.828427
#> 6 1.000000
#> 7 1.414214
#> 8 1.414214
#> 9 1.000000
#> 10 1.414214
#> 11 1.732051
#> 12 1.000000
#> 13 1.000000
#> 14 1.000000
#> 15 1.414214
#> 16 1.000000
#> 17 1.000000
#> 18 1.000000
#> 19 1.732051
#> 20 2.000000
#> 21 1.000000
#> 22 1.000000
#> 23 1.000000
#> 24 1.000000
#> 25 1.000000
#> 26 1.000000
#> 27 1.000000
#> 28 1.000000
#> 29 1.000000
#> 30 2.414214
Quando se quer saber se há diferença entre os “Tratamentos” do ponto de vista multivariado, pode-se fazer a analise de variância multivariada. Para isso, deve-se utilizar a função MANOVA
. Dessa função deve-se considerar o delineamento desejado no argumento Modelo
:
1 = Delineamento inteiramente casualizado (DIC)
2 = Delineamento em blocos casualizados (DBC)
3 = Delineamento em quadrado latino (DQL)
4 = Esquema fatorial em DIC
5 = Esquema fatorial em DBC
=MANOVA(Dados.DIC,Modelo=1)
Res
Res#> __________________________________________________________________________
#> MANOVA com o teste Pillai
#> Df Pillai approx F num Df den Df Pr(>F)
#> Trat 4 0.9235571 0.9434949 28 88 0.5535326
#> Residuals 25 NA NA NA NA NA
#>
#> MANOVA com o teste Wilks
#> Df Wilks approx F num Df den Df Pr(>F)
#> Trat 4 0.3206824 0.9261686 28 69.92768 0.5771188
#> Residuals 25 NA NA NA NA NA
#>
#> MANOVA com o teste Hotelling
#> Df Hotelling-Lawley approx F num Df den Df Pr(>F)
#> Trat 4 1.447318 0.904574 28 70 0.605557
#> Residuals 25 NA NA NA NA NA
#>
#> MANOVA com o teste Roy
#> Df Roy approx F num Df den Df Pr(>F)
#> Trat 4 0.8950178 2.812913 7 22 0.02980302
#> Residuals 25 NA NA NA NA NA
#>
#> As medias dos tratamentos podem ser acessados com o $Med
#> Os Graus de liberdade do residuo podem ser acessados com o $GLres
#> A matriz de (co)variancias residuais pode ser acessada com o $CovarianciaResidual
#> __________________________________________________________________________
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
:
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
=Res$Med
DadosMed=Distancia(DadosMed,Metodo = 7,Cov = Res$CovarianciaResidual)
Dist
Dist#> Medida de dissimilaridade: 7 = Distancia de Mahalanobis.
#>
#> Menor Distancia: 0.7210422
#> Maior Distancia: 5.742836
#> Media das Distancias: 3.015247
#> Amplitude das Distancias: 5.021794
#> Desvio Padrao das Distancias: 1.954571
#> Coeficiente de variacao das Distancias: 64.82292
#> Individuos mais proximos: Trat2 Trat4
#> Individuos mais distantes: Trat3 Trat5
Informações importantes podem ser obtidas dessa matriz com a função SummaryDistancia
:
=SummaryDistancia(Dist) resumo
resumo#> _________________________________________________________________________
#> Tabela com o resumo da matriz dissimilaridade
#> Medio Minimo Maximo sd MaisProximo MaisDistante
#> Trat1 2.53 1.32 5.15 1.76 Trat2 Trat5
#> Trat2 2.05 0.72 4.84 1.88 Trat4 Trat5
#> Trat3 2.77 1.34 5.74 2.02 Trat2 Trat5
#> Trat4 2.50 0.72 5.17 1.89 Trat2 Trat5
#> Trat5 5.22 4.84 5.74 0.38 Trat2 Trat3
#>
#> Menor Distancia: 0.7210422
#> Maior Distancia: 5.742836
#> Media das Distancias: 3.015247
#> Amplitude das Distancias: 5.021794
#> Desvio Padrao das Distancias: 1.954571
#> Coeficiente de variacao das Distancias: 64.82292
#> Individuos mais proximos: Trat2 Trat4
#> Individuos mais distantes: Trat3 Trat5
#> _________________________________________________________________________
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.9855215
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.017
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Ponto de corte pelo metodo Mojena
#> k=1.25 k=2
#> 4.810794 6.298445
#> _________________________________________________________________________
Adcionalmente, pode-se fazer o agrupamento Tocher com o auxilio da função Tocher
:
#Dendrograma com o metodo UPGMA
Tocher(Dist)
#> _________________________________________________________________________
#> Agrupamento Tocher
#> Cluster1:
#> Trat2 Trat4 Trat1 Trat3
#>
#> Cluster2:
#> Trat5
#>
#> Distancia intra e intercluster:
#> Cluster1 Cluster2
#> Cluster1 1.542090 5.224981
#> Cluster2 5.224981 0.000000
#>
#>
#> Correlacao Cofenetica: 0.97302
#> pvalor: 0.215 baseado no teste Mantel
#> Hipotese alternativa: A correlacao e maior que 0
#> _________________________________________________________________________
###Outra possibilidade é o estudo dos componentes principais:
ComponentesPrincipais(DadosMed,padronizar = TRUE)
#> $`Autovalor da matriz de covariancia`
#> [1] 4.3965 1.9234 0.3852 0.2949 0.0000 0.0000 0.0000
#>
#> $`Autovetor da matriz de covariancia`
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> [1,] -0.4415 0.2430 -0.2619 0.1019 0.0000 0.1718 0.7985
#> [2,] -0.2825 0.5132 -0.5489 -0.2999 -0.2546 -0.0344 -0.4467
#> [3,] -0.2526 -0.5369 0.0050 -0.7481 -0.1848 -0.1710 0.1576
#> [4,] -0.4082 -0.3299 0.1136 0.4248 -0.6387 0.2859 -0.2038
#> [5,] 0.2554 -0.4878 -0.7800 0.2679 0.0754 -0.1023 0.0216
#> [6,] -0.4697 -0.0278 0.0860 0.2944 0.1966 -0.7987 -0.0888
#> [7,] -0.4571 -0.2045 -0.0363 -0.0319 0.6699 0.4582 -0.2969
#>
#> $`Escores dos componentes principais`
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> Trat1 1.1515 -1.8718 0.3181 0.4900 0 0 0
#> Trat2 0.8063 0.8045 -0.9488 0.3342 0 0 0
#> Trat3 1.7241 -0.1561 0.0309 -0.8601 0 0 0
#> Trat4 -0.1294 1.7885 0.7234 0.2270 0 0 0
#> Trat5 -3.5525 -0.5651 -0.1236 -0.1910 0 0 0
#>
#> $`Correlacao entre as variaveis e os comp. principais`
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> X1Contagem -0.9257 0.3370 -0.1625 0.0553 0.2185 0.2059 -0.6101
#> Germ -0.5923 0.7117 -0.3407 -0.1629 -0.3004 0.2325 -0.8598
#> SemAnormais -0.5297 -0.7446 0.0031 -0.4063 0.8781 0.7195 -0.0778
#> SemMortas -0.8559 -0.4575 0.0705 0.2307 0.8679 0.1968 0.0110
#> Retencao75 0.5355 -0.6765 -0.4842 0.1455 0.2629 0.1323 0.3047
#> Retencao55 -0.9849 -0.0386 0.0534 0.1599 0.5821 0.1689 -0.2791
#> RetencaoFundo -0.9585 -0.2836 -0.0225 -0.0173 0.7551 0.4100 -0.2902
#>
#> $`Explicacao dos componentes principais`
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7]
#> Autovalor 4.3965 1.9234 0.3852 0.2949 0 0 0
#> % Explicacao 62.8072 27.4765 5.5036 4.2128 0 0 0
#> % Explicacao Acumulada 62.8072 90.2837 95.7872 100.0000 100 100 100
###Porém, quando se tem repetições, o mais indicado é o estudo de variáveis canônicas:
Para isso, deve-se indicar qual é o Modelo
referente ao delineamento:
1 = Delineamento inteiramente casualizado (DIC)
2 = Delineamento em blocos casualizados (DBC)
3 = Delineamento em quadrado latino (DQL)
4 = Esquema fatorial em DIC
5 = Esquema fatorial em DBC
=VariaveisCanonicas(Dados.DIC,Modelo = 1) VC