Após a instalação do pacote é preciso ativa-lo. Para isso, deve-se
utilizar a função library
ou require
library(MultivariateAnalysis)
#> ############################################################
#> Obrigado por utilizar o MultivariateAnalysis
#> Author: Alcinei Mistico Azevedo (ICA-UFMG)
#> Veja tutoriais sobre este e outros pacotes no youtube:
#> https://www.youtube.com/channel/UCDGyvLCJnv9RtTY1YMBMVNQ
#> Se inscreva e compartilhe para ajudar o canal a crescer.
#> ############################################################
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
.
data("Dados.DBC.Misto")
head(Dados.DBC.Misto)
#> Acesso Bloco ProdCom ProdTot NumRaiz CorRama TamRama TipoLobulosFolha
#> 1 Arruba 1 20.042 32.500 2.500 1 6 5
#> 2 Cambraia 1 19.125 34.500 2.625 3 5 7
#> 3 Cariruvermelha 1 27.917 46.542 4.500 9 5 7
#> 4 Coquinha 1 6.875 10.625 3.000 1 6 5
#> 5 Espanhola 1 17.958 26.833 3.000 1 6 5
#> 6 Licuri 1 27.083 39.208 5.333 1 6 7
#> FormatoLobulo PigmentacaoNervura CorFolha
#> 1 6 7 3
#> 2 6 7 4
#> 3 6 5 9
#> 4 6 7 1
#> 5 6 6 3
#> 6 6 4 4
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.DBC.Misto[,1:5],Modelo=2)
Res
Res#> __________________________________________________________________________
#> MANOVA com o teste Pillai
#> Df Pillai approx F num Df den Df
#> Trat 9 1.42080007707336 2.69908842404249 27 81
#> Bloco 3 0.850965245237817 3.56378005994039 9 81
#> Residuals 27
#> Pr(>F)
#> Trat 0.000319509414350262
#> Bloco 0.000902575136153416
#> Residuals
#>
#> MANOVA com o teste Wilks
#> Df Wilks approx F num Df den Df
#> Trat 9 0.0955012834922687 3.36866086165212 27 73.6552121942445
#> Bloco 3 0.35647163286373 3.57701543314339 9 60.9940366951145
#> Residuals 27
#> Pr(>F)
#> Trat 1.93403537406567e-05
#> Bloco 0.0012660522907648
#> Residuals
#>
#> MANOVA com o teste Hotelling
#> Df Hotelling-Lawley approx F num Df den Df
#> Trat 9 4.85767878020045 4.25796535054607 27 71
#> Bloco 3 1.27524841232468 3.35343101018712 9 71
#> Residuals 27
#> Pr(>F)
#> Trat 5.17749339202821e-07
#> Bloco 0.00179807124388821
#> Residuals
#>
#> MANOVA com o teste Roy
#> Df Roy approx F num Df den Df
#> Trat 9 3.93880792222087 11.8164237666626 9 27
#> Bloco 3 0.694133101322297 6.24719791190067 3 27
#> Residuals 27
#> Pr(>F)
#> Trat 2.76081734174698e-07
#> Bloco 0.00231769557967965
#> Residuals
#>
#> 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.
=Res$Med
DadosMed=Distancia(DadosMed,Metodo = 7,Cov = Res$CovarianciaResidual) DistMaha
Informações importantes podem ser obtidas dessa matriz com a função
SummaryDistancia
:
=SummaryDistancia(DistMaha) resumo
resumo#> _________________________________________________________________________
#> Tabela com o resumo da matriz dissimilaridade
#> Medio Minimo Maximo sd MaisProximo MaisDistante
#> Arruba 3.80 0.09 8.88 3.44 Palmas TCarro1
#> Cambraia 4.06 0.26 11.16 3.71 Palmas Coquinha
#> Cariruvermelha 8.79 0.95 25.92 8.85 Licuri Coquinha
#> Coquinha 14.30 4.00 30.71 9.09 TCarro2 TCarro1
#> Espanhola 3.91 0.13 9.52 3.36 Arruba TCarro1
#> Licuri 6.74 0.95 19.04 6.48 Cariruvermelha Coquinha
#> Palmas 3.77 0.09 9.54 3.59 Arruba Coquinha
#> Princesa 4.84 1.79 13.35 4.33 Espanhola Coquinha
#> TCarro1 11.39 3.25 30.71 9.61 Cariruvermelha Coquinha
#> TCarro2 11.27 4.00 24.68 7.94 Coquinha TCarro1
#>
#> Menor Distancia: 0.08995549
#> Maior Distancia: 30.70898
#> Media das Distancias: 7.286518
#> Amplitude das Distancias: 30.61903
#> Desvio Padrao das Distancias: 7.265315
#> Coeficiente de variacao das Distancias: 99.70901
#> Individuos mais proximos: Arruba Palmas
#> Individuos mais distantes: Coquinha TCarro1
#> _________________________________________________________________________
Dados qualitativos: binarios ou multicategoricos
9 = Frequencia de coincidencia.
10 = Frequencia de discordancia.
11 = indice Inverso de 1+coincidencia = 1/(1+c)
=Dados.DBC.Misto[,6:11]
Dadosquali
#Excluindo os valores NA
=is.na(Dadosquali$CorFolha)==FALSE
id=Dadosquali[id,]
Dadosquali2#Colocando o nome dos tratamentos na matriz
rownames(Dadosquali2)=Dados.DBC.Misto[id,1]
=Distancia(Dadosquali2,Metodo = 10) Distquali
#Criando list com as matrizes
=list(DistMaha,Distquali)
dissimilaridades=c(ncol(DadosMed),ncol(Dadosquali2))
n#Calculando a media ponderada
=MediaDistancia(dissimilaridades,n)
DistMisto
DistMisto#> Arruba Cambraia Cariruvermelha Coquinha Espanhola
#> Cambraia 0.44784038
#> Cariruvermelha 0.62137298 0.38988736
#> Coquinha 0.19938334 0.56561782 0.83692668
#> Espanhola 0.11251594 0.56437701 0.62767207 0.29614257
#> Licuri 0.37228812 0.37048266 0.45478809 0.53998338 0.37638866
#> Palmas 0.44542087 0.66952651 0.71910793 0.65912197 0.44781930
#> Princesa 0.68704895 0.68766317 0.48901959 0.81153120 0.57494561
#> TCarro1 0.65189350 0.41233327 0.47974207 0.88888889 0.76997345
#> TCarro2 0.50042758 0.73296801 0.90727161 0.59893358 0.50091940
#> Licuri Palmas Princesa TCarro1
#> Cambraia
#> Cariruvermelha
#> Coquinha
#> Espanhola
#> Licuri
#> Palmas 0.58358742
#> Princesa 0.70958440 0.68675915
#> TCarro1 0.62648640 0.75464494 0.70554673
#> TCarro2 0.73598043 0.06915459 0.78707948 0.93454414
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(DistMaha,Metodo=3,Titulo="Dados quantiativos")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.7302818
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.001
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 9.215353
#>
#> Agrupamentos
#> Cluster
#> Arruba 1
#> Cambraia 1
#> Cariruvermelha 1
#> Coquinha 2
#> Espanhola 1
#> Licuri 1
#> Palmas 1
#> Princesa 1
#> TCarro1 1
#> TCarro2 2
#> _________________________________________________________________________
Dendrograma(Distquali,Metodo=3, Titulo="Dados qualitativos")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.8915022
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.001
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.9039087
#>
#> Agrupamentos
#> Cluster
#> Arruba 1
#> Cambraia 1
#> Cariruvermelha 1
#> Coquinha 1
#> Espanhola 1
#> Licuri 1
#> Palmas 1
#> Princesa 2
#> TCarro1 1
#> TCarro2 1
#> _________________________________________________________________________
Dendrograma(DistMisto,Metodo=3,Titulo= "Qualitativos + Quantiativos")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.788377
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.001
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.6697798
#>
#> Agrupamentos
#> Cluster
#> Arruba 1
#> Cambraia 2
#> Cariruvermelha 2
#> Coquinha 1
#> Espanhola 1
#> Licuri 2
#> Palmas 1
#> Princesa 2
#> TCarro1 2
#> TCarro2 1
#> _________________________________________________________________________
Adcionalmente, pode-se fazer o agrupamento Tocher com o auxilio da
função Tocher
:
Tocher(DistMisto)
#> _________________________________________________________________________
#> Agrupamento Tocher
#> Cluster1:
#> Palmas TCarro2 Arruba Espanhola Coquinha
#>
#> Cluster2:
#> Cambraia Licuri Cariruvermelha
#>
#> Cluster3:
#> Princesa
#>
#> Cluster4:
#> TCarro1
#>
#> Distancia intra e intercluster:
#> Cluster1 Cluster2 Cluster3 Cluster4
#> Cluster1 0.3829839 0.6200606 0.7094729 0.7999890
#> Cluster2 0.6200606 0.4050527 0.6287557 0.5061872
#> Cluster3 0.7094729 0.6287557 0.0000000 0.7055467
#> Cluster4 0.7999890 0.5061872 0.7055467 0.0000000
#>
#>
#> Correlacao Cofenetica: 0.7114534
#> pvalor: 0.001 baseado no teste Mantel
#> Hipotese alternativa: A correlacao e maior que 0
#> _________________________________________________________________________
CorrelacaoMantel(DistMaha,DistMisto)
#> Estimativa de correlacao: 0.5400622
#> P-valor obtido pelo teste Mantel: 0.002
#> Hipotese alternativa: bilateral
CorrelacaoMantel(DistMaha,Distquali)
#> Estimativa de correlacao: 0.1649969
#> P-valor obtido pelo teste Mantel: 0.365
#> Hipotese alternativa: bilateral
CorrelacaoMantel(Distquali,DistMisto)
#> Estimativa de correlacao: 0.9191985
#> P-valor obtido pelo teste Mantel: 0.001
#> Hipotese alternativa: bilateral