library(FactoMineR) gastos <- read.table("http://factominer.free.fr/libra/gastos.csv",header=TRUE, sep=";", row.names=1) apply(gastos[1:7,],2,mean) apply(gastos[1:7,],2,sd)*sqrt(6/7) apply(gastos[1:7,],2,sd)*sqrt(6/7)/apply(gastos[1:7,],2,mean) res.pca <- PCA(gastos,ind.sup=8:18,quanti.sup=27:ncol(gastos)) res.pca round(res.pca$eig,2) barplot(res.pca$eig[,1], main="Valores propios",names.arg=paste("dim",1:nrow(res.pca$eig))) plot.PCA(res.pca, choix="ind", invisible="ind.sup") round(cbind(res.pca$ind$coord[,1:3],res.pca$ind$cos2[,1:3],res.pca$ind$contrib[,1:3]),2) plot.PCA(res.pca, choix="var", invisible="quanti.sup") round(cbind(res.pca$var$coord[,1:3],res.pca$var$cos2[,1:3],res.pca$var$contrib[,1:3]),2) round(cor(gastos[,c(1,4,17)]),2) plot.PCA(res.pca, choix="var", invisible="var") round(cbind(res.pca$quanti.sup$coord[,1:3],res.pca$quanti.sup$cos2[,1:3]),2) dimdesc(res.pca) round(cbind(res.pca$ind.sup$coord[,1:4],res.pca$ind.sup$cos2[,1:4],2) plot(res.pca, choix="ind", axes=2:3) plot(res.pca, choix="var", axes=2:3) res.pca$call$centre res.pca$call$ecart.type round(scale(gastos[1:7,c(5,6,15,17,19,21)]),2)*sqrt(6/7) par(las=2) plot(gastos[1:7,21],type="b",axes=F,ylab="Communicationes (en Euros)",xlab="",bty="o") axis(2) axis(1,1:7,rownames(gastos)[1:7]) par(las=0) pairs(gastos[1:7,1:4])