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
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
_______________________________________________
R-br mailing list
R-br@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.