[R-br] Emprego da PCA para seleção de variáveis mais correlacionadas no primeiro componente principal

Cesar Rabak cesar.rabak em gmail.com
Sábado Maio 5 15:43:48 -03 2018


Alexandre,

Eu usei as funções do pacote "factoextra"
<http://www.sthda.com/english/wiki/factoextra-r-package-easy-multivariate-data-analyses-and-elegant-visualization>
.

A partir do seu CMR você pode seguir com:
> install.packages("factoextra")  ## só vai ser necessário uma única vez

> library("factoextra")

> fviz_contrib(pca.object, choice = "var", axes = 1, top = 5)
> fviz_contrib(pca.object, choice = "var", axes = 2, top = 5)
> fviz_contrib(pca.object, choice = "var", axes = 3, top = 5)

O parâmetro "top = 5" foi colocado porque você explicitou seu desejo de
obter as cinco primeiras variáveis. Se você usar o default do sistema, ele
coloca uma linha vermelha tracejada indicando o número "recomendado"
(baseado numa lógica decorrente da teoria da PCA [p/detalhes, v. a doc. do
pacote]).

HTH
--
Cesar Rabak



2018-05-05 9:47 GMT-03:00 ASANTOS <alexandre.santos em cas.ifmt.edu.br>:

> Obrigado Cesar e Fernando pelas dicas estão ajudando muito a solidificar
> os estudos que venho conduzindo,
>
>     Fernando obrigado pelo vídeo, tirando o inglês carregado no francês
> que dificulta na compreensão ajudou muito e estou explorando muito a
> ferramenta dimdesc().
>
>     Cesar, as figuras que me mandou representa bem o que eu quero, qual a
> função que utilizou para gerar aquelas figuras de % de contribuição de cada
> variável.
>
> Obrigado a ajuda de todos,
>
> --
> ======================================================================
> Alexandre dos Santos
> Proteção Florestal
> IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
> Campus Cáceres
> Caixa Postal 244
> Avenida dos Ramires, s/n
> Bairro: Distrito Industrial
> Cáceres - MT                      CEP: 78.200-000
> Fone: (+55) 65 99686-6970 (VIVO) (+55) 65 3221-2674 (FIXO)e-mails:alexandresantosbr em yahoo.com.br
>         alexandre.santos em cas.ifmt.edu.br
> Lattes: http://lattes.cnpq.br/1360403201088680
> OrcID: orcid.org/0000-0001-8232-6722   -   ResearcherID: A-5790-2016
> Researchgate: www.researchgate.net/profile/Alexandre_Santos10
> LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/
> ======================================================================
>
> Em 04/05/2018 17:36, Cesar Rabak escreveu:
>
> Sim Alexandre.
>
> Aliás, eu recomendo que você teste os resultados da pesquisa com os
> comandos (para os dados e resultados da PCA do seu CMR):
>
> > biplot(pca.object)
>
> e
>
> > biplot(pca.object, choice=2:3)
>
> Nessa representação você pode ver como as variáveis estão correlacionadas
> em relação às componentes da PCA *lembrando que a representação por ser
> espacial pode ter uma distorção devido às outras dimensões*.
>
> Por isso outros pacotes, como o FactoMiner (um dos meus favoritos junto
> com o ade4) permitem que se faça um corte nas variáveis que aparecem nesses
> gráficos levando em conta a assim chamada "qualidade da representação" em
> cada plano.
>
> Vou eludir discussão sobre um número muito reduzido de casos versus o
> número de variáveis neste caso porque entendo que o CMR é só para discutir
> a técnica.
>
> HTH
>
> 2018-05-03 16:30 GMT-03:00 ASANTOS <alexandre.santos em cas.ifmt.edu.br>:
>
>> Obrigado Cezar,
>>
>>      Então mudando names(load.rot[,2][order(abs(l
>> oad.rot[,2]),decreasing=TRUE)][1:topN]) e names(load.rot[,3][order(abs(l
>> oad.rot[,3]),decreasing=TRUE)][1:topN]), vou ter as cinco variáveis mais
>> correlacionadas com a segunda e terceira componentes principais
>> respectivamente?
>>
>> Novamente obrigado,
>>
>> Alexandre
>>
>> --
>> ======================================================================
>> Alexandre dos Santos
>> Proteção Florestal
>> IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
>> Campus Cáceres
>> Caixa Postal 244
>> Avenida dos Ramires, s/n
>> Bairro: Distrito Industrial
>> Cáceres - MT                      CEP: 78.200-000
>> Fone: (+55) 65 99686-6970 (VIVO) (+55) 65 3221-2674 (FIXO)e-mails:alexandresantosbr em yahoo.com.br
>>         alexandre.santos em cas.ifmt.edu.br
>> Lattes: http://lattes.cnpq.br/1360403201088680
>> OrcID: orcid.org/0000-0001-8232-6722   -   ResearcherID: A-5790-2016
>> Researchgate: www.researchgate.net/profile/Alexandre_Santos10
>> LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/
>> ======================================================================
>>
>> Em 02/05/2018 23:57, Cesar Rabak escreveu:
>>
>> ##Banco de dados
>>
>> set.seed(12345)
>> mat <- matrix(rnorm(120,0,0.5),nrow=6,byrow=TRUE)
>> rownames(mat) <- paste("s",1:6,sep="")
>> colnames(mat) <- paste("g",1:20,sep="")
>> head(mat)
>>
>> ## Espectros com maior correlação
>> pca.object <- prcomp(mat,center=TRUE,scale.=FALSE)
>> plot(pca.object)
>>
>> #Quero os cinco mais correlacionados
>> topN <- 5
>> load.rot <- scale(pca.object$rotation)
>> names(load.rot[,1][order(abs(load.rot[,1]),decreasing=TRUE)][1:topN])
>>
>>
>>
>
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20180505/354629bc/attachment.html>


Mais detalhes sobre a lista de discussão R-br