The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
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.Misto")
Dados.Misto#> M1 M2 M3 M4 M5 Altura Prod CorFlor Crescimento NumFr Pelos
#> 1 1 1 1 0 0 55 100 Branco ereto 50 Sim
#> 2 0 1 0 1 0 57 110 Branco ereto 55 Sim
#> 3 1 0 1 1 1 85 115 Branco prostado 54 Sim
#> 4 0 1 1 0 0 92 114 Amarelo prostado 56 Nao
#> 5 1 1 0 1 1 40 80 Vermelho semiprostado 70 Nao
Muitas são as opções para a obtenção de medidas de dissimilaridade para dados mistos. Vamos apresentar aqui algumas possibilidades para analise.
Uma possibilidade quando se tem dados misto é o uso do índice de Gower.
#colocando nome nos individuos
rownames(Dados.Misto)=paste0("T",1:nrow(Dados.Misto))
=Distancia(Dados.Misto,Metodo = 21)
Gower1
Gower1#> Medida de dissimilaridade: 21 =Dissimilaridade de Gower
#>
#> Menor Distancia: 0.3249251
#> Maior Distancia: 0.7883117
#> Media das Distancias: 0.5741259
#> Amplitude das Distancias: 0.4633866
#> Desvio Padrao das Distancias: 0.1364548
#> Coeficiente de variacao das Distancias: 23.7674
#> Individuos mais proximos: T1 T2
#> Individuos mais distantes: T4 T5
Um problema desta metodologia, é que neste caso, quando as variáveis binárias (0 ou 1) indicando a presença ou ausência de bandas a informação 0-0 (ausencia de bandas em ambos os indivíduos) indica que os dois índivíduos são iguais, o que não é verdade necessáriamente. Caso queira desconsiderar essas informações (0-0) no cômputo da dissimilaridade, pode-se usar o “índice de Gower 2”.
Essa medidada deve ser utilizada quando se tem variáveis binárias (0 ou 1) indicando a presença ou ausência de bandas. Neste caso, a informação 0-0 (ausencia de bandas em ambos os indivíduos) são desconsiderados no cômputo da dissimilaridade, raciocícnio similar ao indice de Jacard.
=Distancia(Dados.Misto,Metodo = 22)
Gower2round(Gower2$Distancia,3)
#> T1 T2 T3 T4
#> T2 0.357
#> T3 0.473 0.521
#> T4 0.601 0.649 0.569
#> T5 0.715 0.693 0.697 0.788
Neste caso, vamos usar o índice de jacard para os dados binários, índice de discordância para os dados multicategóricos e distância euclidiana padronizada para os dados quantitativos.
#Indice de jacard
=Distancia(Dados.Misto[,c(1:5)],Metodo = 12)
DistBin#Indice de discordancia
=Distancia(Dados.Misto[,c(8,9,11)],Metodo = 10)
DistCat#Distancia euclidiana padronizada
=Distancia(Dados.Misto[,c(6,7,10)],Metodo = 5)
DadosQanti
#Criando list com as matrizes
=list(DistBin,DistCat,DadosQanti)
dissimilaridades
#Calculando a media ponderada
=MediaDistancia(dissimilaridades,n=c(5,3,3))
Metodo3
Metodo3#> T1 T2 T3 T4
#> T2 0.4945408
#> T3 0.5603724 0.6408972
#> T4 0.6125539 0.7682414 0.6664392
#> T5 0.8316672 0.7685447 0.7721730 0.9090909
Os dados quantitativos podem ser transformados em qualitativos. Para
isso, pode-se usar a funcao Quant2Quali
. Assim basta
indicar o numero maximo de classes desejadas e a funcao demonstrará para
cada individuo a classe que ele pertence. Essa classe é obtida
considerando intervalos equidistantes entre o menor e maior valor de
cada variavel, considerando-se o número de classes.
=Dados.Misto[,c(6,7,10)]
DadosQuanti
DadosQuanti#> Altura Prod NumFr
#> T1 55 100 50
#> T2 57 110 55
#> T3 85 115 54
#> T4 92 114 56
#> T5 40 80 70
=Quant2Quali(DadosQuanti,nclasses = 4)
Mat
Mat#> Altura Prod NumFr
#> T1 "C2" "C3" "C1"
#> T2 "C2" "C4" "C2"
#> T3 "C4" "C4" "C1"
#> T4 "C4" "C4" "C2"
#> T5 "C1" "C1" "C4"
#Substituido nos dados os valores quatitativos por qualitativos
=Dados.Misto
Dados.Misto2c(6,7,10)]=Mat
Dados.Misto2[,
Dados.Misto2#> M1 M2 M3 M4 M5 Altura Prod CorFlor Crescimento NumFr Pelos
#> T1 1 1 1 0 0 C2 C3 Branco ereto C1 Sim
#> T2 0 1 0 1 0 C2 C4 Branco ereto C2 Sim
#> T3 1 0 1 1 1 C4 C4 Branco prostado C1 Sim
#> T4 0 1 1 0 0 C4 C4 Amarelo prostado C2 Nao
#> T5 1 1 0 1 1 C1 C1 Vermelho semiprostado C4 Nao
Agora, podemos considerar todos os dados como qualitativos e considerar o índice de discordancia com medida de dissimilaridade.
=Distancia(Dados.Misto2,Metodo = 10)
Metodo4
Metodo4#> Medida de dissimilaridade: 10 = Frequencia de discordancia.
#>
#> Menor Distancia: 0.4545455
#> Maior Distancia: 0.8181818
#> Media das Distancias: 0.6545455
#> Amplitude das Distancias: 0.3636364
#> Desvio Padrao das Distancias: 0.1196874
#> Coeficiente de variacao das Distancias: 18.28557
#> Individuos mais proximos: T1 T2
#> Individuos mais distantes: T1 T5
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(Gower1,Metodo=3,Titulo="Gower1")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.9486072
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.013
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.7110568
#>
#> Agrupamentos
#> Cluster
#> T1 1
#> T2 1
#> T3 1
#> T4 1
#> T5 1
#> _________________________________________________________________________
Dendrograma(Gower2,Metodo=3,Titulo="Gower2")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.9655169
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.02
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.7410889
#>
#> Agrupamentos
#> Cluster
#> T1 1
#> T2 1
#> T3 1
#> T4 1
#> T5 1
#> _________________________________________________________________________
Dendrograma(Metodo3,Metodo=3,Titulo="Metodo3")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.8987349
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.014
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.8213046
#>
#> Agrupamentos
#> Cluster
#> T1 1
#> T2 1
#> T3 1
#> T4 1
#> T5 1
#> _________________________________________________________________________
Dendrograma(Metodo4,Metodo=4,Titulo="Metodo4")
#> _________________________________________________________________________
#> Estimativa de correlacao cofenetica:
#> [1] 0.9256188
#> Significancia da correlacao cofenetica pelo teste Mantel
#> pvalor: 0.035
#> Hipotese alternativa: A correlacao e maior que 0
#>
#> Criterio de Corte
#> k=1.25
#> 0.8787674
#>
#> Agrupamentos
#> Cluster
#> T1 1
#> T2 1
#> T3 1
#> T4 1
#> T5 2
#> _________________________________________________________________________
=cbind(Gower1=Gower1$Distancia,Gower2=Gower2$Distancia,Metodo3=Metodo3,Metodo4=Metodo4$Distancia)
mat
=cor(mat)
Cor
Cor#> Gower1 Gower2 Metodo3 Metodo4
#> Gower1 1.0000000 0.9370078 0.9399261 0.9468470
#> Gower2 0.9370078 1.0000000 0.9600371 0.8780937
#> Metodo3 0.9399261 0.9600371 1.0000000 0.8509176
#> Metodo4 0.9468470 0.8780937 0.8509176 1.0000000
ComponentesPrincipais.Misto(Dados.Misto,plot = "individuos")
#> $Autovalores
#> Eigenvalue Proportion Cumulative
#> dim 1 5.853056 45.02351 45.02351
#> dim 2 2.986940 22.97646 67.99997
#> dim 3 2.837528 21.82714 89.82712
#> dim 4 1.322475 10.17288 100.00000
#>
#> $Escores
#> dim 1 dim 2 dim 3 dim 4
#> T1 1.0397489 -1.0987370 -1.5175138 -1.85414540
#> T2 0.3765185 -1.0657093 -1.8859019 1.75994227
#> T3 1.2444265 -1.5736106 2.8577009 0.19372558
#> T4 2.0574396 3.1198194 0.1928201 0.08184657
#> T5 -4.7181335 0.6182376 0.3528947 -0.18136902
#>
#> $CorrelacaoQuanti
#> dim 1 dim 2 dim 3 dim 4
#> Altura 0.7814370 0.33600164 0.5084262 0.1340218
#> Prod 0.9237992 -0.02618815 0.1790451 0.3374198
#> NumFr -0.9121228 0.33060980 0.1780682 0.1643801
#>
#> $ImportanciaQuali
#> dim 1 dim 2 dim 3 dim 4
#> M1 0.16869111 0.23543425 0.16836988 4.275047e-01
#> M2 0.06614482 0.20725644 0.71950417 7.094577e-03
#> M3 0.53674580 0.01117258 0.13803744 3.140442e-01
#> M4 0.27315006 0.22792411 0.10307171 3.958541e-01
#> M5 0.34359939 0.05092936 0.60545201 1.924228e-05
#> CorFlor 0.98593291 0.98918493 0.01839505 6.487103e-03
#> Crescimento 0.98119162 0.26247681 0.74494354 1.138802e-02
#> Pelos 0.20158391 0.77967582 0.01749202 1.248255e-03
#>
#> $Niveis
#> dim 1 dim 2 dim 3 dim 4
#> M1=0 0.5030275 0.59426541 -0.5025483 0.800785316
#> M1=1 -0.3353517 -0.39617694 0.3350322 -0.533856877
#> M2=0 0.5143727 -0.91050851 1.6964718 0.168458620
#> M2=1 -0.1285932 0.22762713 -0.4241180 -0.042114655
#> M3=0 -0.8972841 -0.12945607 -0.4550342 0.686342674
#> M3=1 0.5981894 0.08630405 0.3033562 -0.457561783
#> M4=0 0.6400977 0.58471033 -0.3932017 -0.770571984
#> M4=1 -0.4267318 -0.38980688 0.2621345 0.513714656
#> M5=0 0.4786087 0.18426314 -0.6353225 -0.003581646
#> M5=1 -0.7179130 -0.27639471 0.9529837 0.005372469
#> CorFlor=Amarelo 0.8504244 1.80516206 0.1144675 0.071171601
#> CorFlor=Branco 0.3665914 -0.72096039 -0.1079877 0.028847361
#> CorFlor=Vermelho -1.9501987 0.35771910 0.2094957 -0.157713682
#> Crescimento=ereto 0.2927008 -0.62618632 -1.0102175 -0.040958269
#> Crescimento=prostado 0.6823986 0.44732678 0.9054697 0.119815110
#> Crescimento=semiprostado -1.9501987 0.35771910 0.2094957 -0.157713682
#> Pelos=Nao -0.5498871 1.08144058 0.1619816 -0.043271041
#> Pelos=Sim 0.3665914 -0.72096039 -0.1079877 0.028847361
=ComponentesPrincipais.Misto(Dados.Misto,plot = "nivel") CPM
=ComponentesPrincipais.Misto(Dados.Misto,plot = "correlacao") CPM
=ComponentesPrincipais.Misto(Dados.Misto,plot = "pesos") CPM
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.