# Exemplo PCA: Cibele Russo 23/06/2017 # instalar o pacote corrplot se necessário #install.packages("corrplot") library(corrplot) #Leitura dos dados Educacao <- read.table( "http://conteudo.icmc.usp.br/pessoas/cibele/Dados/Educacao.txt", header=TRUE) dados <- Educacao[,3:9] rownames(dados) <- Educacao[,1] colnames(dados) <- c("Frequência:7-14 anos", "Defasagem escolar:7-14","Anos de estudo:25+", "Analfabetos: 25+","Evasão:7-14", "Evasão:15-17", "Frequência:7-22") n <- nrow(dados) p <- ncol(dados) View(dados) # Matriz de variâncias e covariâncias amostrais # Existe diferença entre os comandos abaixo? S <- var(dados) S <- cov(dados) # Matriz de correlações amostrais R <- cor(dados) corrplot(R) corrplot(R,type="lower") ACP <- princomp(S, cor=FALSE, scores=TRUE) summary(ACP,2) loadings(ACP) round(eigen(S)$vectors,3) eigen(S)$values eigen(S)$values/sum(eigen(S)$values) eigen(S)$vectors round(eigen(S)$vectors,2)[,1] summary(prcomp(S)) # --- Análise da primeira componentes principais --- # # --- Que nome você daria à primeira componente principal? --- # prcomp(S)[[2]][,1] # --- Como criar um escore usando as componentes principais? --- # # Proposta: Y = O'X e tomar a primeira componente, por exemplo escore1 <- t(as.matrix(eigen(S)$vectors[,1])) %*% t(dados) round(escore1,2) # Ordenando os dados pelo escore da primeira componente principal ordem<-sort.list(escore1) rownames(dados[ordem,])