[R-br] Análise de Fatores PCA e Dendograma

Felipe felipe.e.barletta em gmail.com
Segunda Abril 13 15:57:42 BRT 2015


André,

Assim como o Cesar comentou, não consegui identificar os data.frame por 
ano que você menciona.
Agora se você tem esses data.frames por ano, será que uma análise de 
agrupamento ou PCA é o ideal? Uma abordagem longitudinal não seria 
melhor? E também não está claro o que deseja. É calcular médias anuais?
O pacote prcomp() extrai sim as PCA's

No seu comando se colocar o argumento scale=T, ele vai criar as PCA's de 
acordo com a matriz de correlação. Veja:
PCA <- prcomp(USArrests,scale=T)
summary(PCA)
names(PCA)
PCA$sdev         #### Ríaz quadrada dos autovalores da matriz de correlação
PCA$rotation    #### Matriz de autovetores normalizados

Comparando com os autovalores e autovetores da matriz de correlação terá 
valores como os extraídos ao acima.

mcor <- cor(USArrests)
mcor
vv <- eigen(mcor)
vv

Logo desta forma terá suas PCA's. Por exemplo a PCA1:
Y1 
<-vv$vectors[1,1]*USArrests[,1]+vv$vectors[2,1]*USArrests[,2]+vv$vectors[3,1]*USArrests[,3]+vv$vectors[4,1]*USArrests[,4]
Y1
roY1x1 <- (vv$vectors[1,1]*sqrt(vv$values[1]))/sqrt(mvar[1,1]) ## 
Correlação da PCA1 com Murder
roY1x1
roY1x2 <- (vv$vectors[2,1]*sqrt(vv$values[1]))/sqrt(mvar[2,2]) ## 
Correlação da PCA1 com Assault
roY1x2
roY1x3 <- (vv$vectors[3,1]*sqrt(vv$values[1]))/sqrt(mvar[3,3]) ## 
Correlação da PCA1 com UrbanPop
roY1x3
roY1x4 <- (vv$vectors[4,1]*sqrt(vv$values[1]))/sqrt(mvar[4,4]) ## 
Correlação da PCA1 com Rape
roY1x4





On 12-04-2015 22:00, Andre Oliveira wrote:
> Cesar Rabak,
> obrigado pela resposta. Esta é a questão como organizar os três bancos 
> de dados levando em conta a variável ano, pois, pelo que tenho olhado 
>  as funções hclust() e prcomp() não extrai os PCAs e nem o dendograma 
> replicando ano. Todos os exemplos do R trabalham com dados de um ano 
> apenas. O objetivo é agrupar as cidades e os bancos de dados 
> USArrests2007, USArrests2009 e USArrests2010 são fictícios e estão ai 
> apenas para ilustrar que tenho 3 bancos com mesma estrutura do USArrests.
>
> Dado que tenho apenas o USArrests,  tudo pode ser  resolvido com o CMR 
> com pequenas variações de escala e padronização das variáveis se desejar.
>
> hc=hclust(dist(USArrests))
> plot(hc)
> summary(prcomp(USArrests))
>
> Obrigado
>
>
>
>
>
>
>
> André Oliveira Souza.
> Graduação em Matemática, mestrado em estatística aplicada.Instituto 
> Federal de Educação, Ciência e Tecnologia do Espirito Santo.  IFES
>
>
>
>
> Em Domingo, 12 de Abril de 2015 18:14, Cesar Rabak 
> <cesar.rabak em gmail.com> escreveu:
>
>
> Embora você cite os procedimentos de PCA e plotar dendrograma e 
> "análise dos fatores", você não dá muita informação de porque você 
> precisa fazer essa análise e a que conclusões deseja chegar ou quais 
> hipóteses avaliar.
>
> Não sei onde estão os dataframes USArrests2007, USArrests2009 e 
> USArrests2010, tendo nos meus defaults apenas o USArrests. 
> Considerando este último, vê-se que a estrutura dele é 50 linhas com 
> cada uma um estado americano por quatro variáveis (três crimes e uma 
> com a população), se você  for anexar bancos com estatísticas de 
> diferentes anos você terá que considerar como colocar a variável ano 
> em jogo e como analisar os estados americanos para manter apenas as 
> cinquenta linhas...
>
> A análise de componentes principais já faz todos os cálculos 
> necessários, assim calcular as médias em separado só faria sentido 
> para alguma análise descritiva (incidentalmente você pode [dependendo 
> do pacote que use para fazer a PCA] escolher se a análise será 
> centrada na média de cada variável ou não).
>
> Quanto aos comandos R que você colocou, eles não formam um CMR e por 
> isso não dá para comentar a respeito.
>
> HTH
> --
> Cesar Rabak
>
> 2015-04-10 16:39 GMT-03:00 Andre Oliveira <andreolsouza em yahoo.com.br 
> <mailto:andreolsouza em yahoo.com.br>>:
>
>     Pessoal boa tarde,
>     estou com dois bancos de dados com a estrutura do USArrests que
>     vem no R só que repetido no tempo.  USArrests2007, USArrests2009, 
>     USArrests2010. Gostaria de orientação de como anexar estes dados
>     para em um banco de dados único e rodar PCA, Plotar, dendograma e
>     a análise de fatores. Pelo que percebi em meus devo  fazer o
>     seguinte.  Montar um banco de dados com os três bancos e tirar a
>     soma ou média. Não sei se fere princípios da análise.
>
>     dados= data.frame(USArrests2007, USArrests2009,  USArrests2010) #
>     Não sei se é data.frame aqui mesmo!
>
>     V1=tapply(V1,grupos,mean)
>     .
>     .
>     .
>     .
>     .
>     Vn=tapply(Vn,grupos,mean)
>
>     dadosmedio=cbind(V1, ........................,Vn)
>     hclust(dist(dadosmedio)
>     prcomp(dadosmédio)
>
>     Ou usar a estrutura com Vn=tapply(Vn,grupos,sum) em vez de
>     Vn=tapply(Vn,grupos,mean). Ou usar o próprio banco formado por
>     USArrests2007, USArrests2009,  USArrests2010.
>
>     Caso falei besteira, desconsidere. Ficarei agradecido por sugestões.
>
>
>     obrigado pela atenção
>
>
>
>
>
>
>
>     André Oliveira Souza.
>     Graduação em Matemática, mestrado em estatística
>     aplicada.Instituto Federal de Educação, Ciência e Tecnologia do
>     Espirito Santo.  IFES
>
>
>     _______________________________________________
>     R-br mailing list
>     R-br em listas.c3sl.ufpr.br <mailto:R-br em listas.c3sl.ufpr.br>
>     https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>     Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e
>     forneça código mínimo reproduzível.
>
>
>
>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150413/f4e2a9ba/attachment.html>


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