Sei sulla pagina 1di 59

Análisis de Componentes Principales (ACP)

Jimmy Antonio Corzo Salamanca

Profesor Tiutlar
Departamento de Estadı́stica
Facultad de Ciencias
Universidad Nacional de Colombia
Bogotá D.C.

20 de febrero de 2018

JCorzo ACP
Figura 2: La técnica de componentes
Figura 1: K. Pearson (1901) principales es debida a Hotelling
introdujo la técnica de ajustes (1933)
ortogonales por mı́nimos cuadrados

JCorzo ACP
Problema

A partir de una matriz de datos Xn×p que contiene información de p


variables medidas en n individuos, buscar una representación de los
objetos mediante r variables (r < p), con poca o ninguna pérdida
de información, si es posible.

JCorzo ACP
En qué consiste el EDM

JCorzo ACP
Procedimiento

Las componentes principales se pueden entender como una :


representación gráfica óptima de los datos.
forma de reducir la dimensionalidad

JCorzo ACP
Metodologı́a para búsqueda de la representación

De ahora en adelante se supondrá que todas las variables están


centradas, de manera que m(X ) = 0 y matriz de covarianzas n1 X 0 X .
La idea es tratar de encontrar p combinaciones lineales de las varia-
bles originales X llamadas componentes principales, tales que:
r (< p) de ellas contengan la mayor cantidad posible la
información contenida en X
Las restantes p − r sean irrelevantes.

JCorzo ACP
Interpretación Geométrica
Xn×3 , matriz de datos, Xi una fila de X
Hi es la proyección (Xi u) de Xi sobre la recta generada por el vector
unitario u (u 0 u = 1).

Figura 3: Proyección de <3 en <.

JCorzo ACP
Sean |Xi Hi | las distancias entre los puntos y sus proyecciones, y
definanse análogamente |OHi | y |OXi |. Entonces se trata de
minimizar la suma de cuadrados de todas las distancias entre los
puntos y su proyección:
n
X
minimizar |Xi Hi |2
i=1

Aplicando el teorema de Pitágoras al triángulo formado por los


puntos Hi , O y Xi y despejando, se obtiene que:
n
X n
X n
X
|Xi Hi |2 = |OXi |2 − |OHi |2
|i=1 {z } |i=1 {z } |i=1 {z }
distancias a minimizar datos conocidos Proyecciones Xu

JCorzo ACP
Entonces, Pni=1 |OXi |2 son fijas porque son los datos disponibles
P
Minimizar ni=1 |Xi Hi |2 equivale a maximizar
n
X
|OHi |2
i=1
.
Como las filas del Xu son las proyecciones de las filas de Xi sobre
u, entonces:
n
X
maximizar |OHi |2 = (Xu)0 Xu = maximizar u 0 X 0 Xu (1)
i=1

sujeto a la restricción u 0 u = 1.

JCorzo ACP
X como un conjunto de
p variables en Rn

JCorzo ACP
X como un conjunto de p variables en Rn

El método de multiplicadores de Lagrange permite demostrar que


el u que satisface dichas condiciones es el que anula el sistema de
ecuaciones:

u 0 X 0 Xu − λu 0 u = u 0 (X 0 Xu − λu) = 0

donde λ es el multiplicador.
Una solución para u 6= 0 implica resolver el sistema:

X 0 Xu = λu (2)

cuya solución es un vector propio u1 correspondiente al mayor valor


propio λ1 de X 0 X .

JCorzo ACP
X como un conjunto de p variables en Rn

Procediendo de esta manera se puede encontrar un segundo vector


propio unitario u2 , tal que u20 u1 = 0, que maximiza u20 X 0 Xu2 con su
correspondiente valor propio λ2 ≤ λ1 .

Este proceso se puede continuar hasta encontrar u1 , . . . , ur


vectores propios unitarios y ortogonales con sus correspondientes
valores propios λ1 ≥ λ2 ≥ · · · ≥ λr , r < p.

JCorzo ACP
X como un conjunto de p variables en Rn

u un vector propio de X 0 X correspondiente al valor propio λ.


Entonces la proyección
Ż = Xu
se llama componente principal de X 0 X sobre el vector u asociada
al valor propio λ y tiene las siguientes propiedades:
1 0 1
m(Ż ) = Ż 1 = u 0 X 0 1 = u 0 m(X ) = 0
n n
y también
1 0 1 λ
v (Ż ) = Ż Ż = u 0 X 0 Xu =
n n n

JCorzo ACP
X como un conjunto de
n objetos en Rp

JCorzo ACP
X como un conjunto de n objetos en Rp

En este caso el análisis se hace sobre la matriz XX 0 y consiste de


manera análoga en encontrar un vector v 6= 0 tal que:

XX 0 v = µv (3)

El vector propio v de XX 0 se obtiene a partir de la ecuación (2)


que produce el vector propio u de X 0 X , premultiplicando por X y
reagrupando términos:

XX 0 (Xu) = λ(Xu) (4)

donde se observa que (Xu) es un vector propio de XX 0 con


respecto al valor propio λ de X 0 X . Además si µ es el mayor valor
propio de XX 0 entonces λ ≤ µ necesariamente.

JCorzo ACP
X como un conjunto de n objetos en Rp

Procediendo de manera similar, al premultiplicar por X 0 en (3) y


reagrupar términos se obtiene:

X 0 X (X 0 v ) = µ(X 0 v ) (5)
de manera que ahora (X 0 v ) es un vector propio de X 0 X con
respecto al valor propio µ de XX 0 .
Entonces como λ es el mayor valor propio de X 0 X , necesariamente
λ ≥ µ, de lo cual se concluye que

λ=µ

JCorzo ACP
X como un conjunto de n objetos en Rp

El mismo procedimiento aplicado para todos los valores propios


distintos de cero de X 0 X permite concluir que los valores propios
de X 0 X y XX 0 son los mismos.

Lo anterior implica que al encontrar los valores y vectores propios


de X 0 X automáticamente se pueden obtener los vectores propios de
XX 0 , los cuales, que como se observó en (4), tienen la forma Xu.

JCorzo ACP
Equivalencias entre análisis por filas y análisis por columnas

Rp (variables) Rn (objetos)

X 0 Xu = λu XX 0 v = µv
XX 0 (Xu) = λ(Xu) X 0 X (X 0 v ) = µ(X 0 v )
Xu es v. p. de XX 0 resp a λ || X 0 v es v. p. de X 0 X resp a µ
µ≤λ µ≥λ

µ=λ

JCorzo ACP
Relación entre los análisis de
variables y de objetos:

paso de Rp a Rn y viceversa
Relaciones de transición

JCorzo ACP
Relación entre los análisis de variables y de objetos: paso
de Rp a Rn y viceversa
Sea vα = Xuα el vector propio de XX 0 con respecto al valor propio
λα Entonces por (2) la norma de vα es uα0 X 0 Xuα = λα . Por tanto
el vector propio normado es:
1
vα = √ Xuα (6)
λα
y de manera análoga
1
uα = √ X 0 vα (7)
λα
(6) y (7) se llaman ecuaciones de transición. Y
ψα = Xuα se llama el α-ésimo factor sobre Rp (8)
0 n
ϕα = X vα se llama el α-ésimo factor sobre R (9)
JCorzo ACP
Reconstrucción de la matriz X

Para cada valor propio distinto de cero λα y cada vector propio uα


de la ecuación (6) se obtiene:
p
Xuα = λα vα (10)
Multiplicando a derecha por uα0 y sumando para todos los valores
propios se obtiene:
p
X p
X p
X uα uα0 = λα vα uα0 (11)
α=1 α=1

JCorzo ACP
Reconstrucción de la matriz X

Para despejar X en (6) se define una matriz U que P contiene los


p vectores propios de X 0 X , de manera que UU 0 = pα=1 uα uα0 . Y
como U 0 U = I premultiplicando por U se obtiene UU 0 U = U y por
tanto UU 0 = I se obtiene la matriz X de manera exacta.
p
X p
X = λα vα uα0 (12)
α=1

Si solo se toman los primeros r < p valores propios distintos de cero


y sus correspondientes vectores propios, X se puede aproximar por:
r p
X
X̂ ≈ λα vα uα0 (13)
α=1

JCorzo ACP
Representación simultánea de objetos y variables (Biplots)

Para r = 2 la ecuación (13) suele llamarse un biplot dado que


permite representar la aproximación de la matriz X por medio de los
dos mayores valores propios y sus correspondientes vectores propios
(Véase detalles en Peña(2003) sec 6.5).

JCorzo ACP
Propiedades de los componentes principales

Análisis de la matriz de covarianzas


Para propósitos prácticos y sin pérdida de generalidad se puede asu-
mir que la matriz X está centrada de manera que m(X ) = 0.
Cuando las variables están medidas en las mismas unidades se
hacen los cálculos sobre la matriz de covarianzas S = n1 X 0 X lo cual
significa que la expresión a maximizar es:

Su = λu (14)

y ahora λ1 ≥ · · · ≥ λr y u1 , . . . , ur , r ≤ p son valores y vectores


propios de S.

JCorzo ACP
Propiedades de los componentes principales
Análisis de la matriz de covarianzas
Para cualquier valor propio λ y cualquier vector propio u de S se
calcula la componente principal:
Z = Xu. (15)
Entonces, dado que las variables están centradas
1 0 1
m(Z ) = Z 1 = u 0 X 0 1 = u 0 m(X ) = 0
n n
y
1 0 1
v (Z ) = Z Z = u 0 X 0 Xu = u 0 Su (16)
n n
Ahora utilizando el hecho de que Su = λu y debido a que u 0 u = 1
se obtiene: u 0 Su = λ y por tanto:
v (Z ) = λ (17)
JCorzo ACP
Propiedades de los componentes principales

Análisis de la matriz de correlación


Cuando las variables están medidas en unidades diferentes, se debe
utilizar la matriz de correlación para el cálculo de las componen-
tes.
Recordando que como X está centrada, al definir Y = XD −1/2 ,
donde D −1/2 = diag(1/sj ) de manera que V (Y ) = R. Entonces

Y 0 Yu = λu implica u 0 Y 0 Yu = λ (18)
y por tanto definiendo la componente principal por Z = Yu su va-
rianza es nuevamente:
1 0
v (Z ) = Z Z = u 0 Y 0 Yu = λ
n

JCorzo ACP
Propiedades de los componentes principales

Porcentaje de varianza explicado por las componentes


En cualquiera de los casos anteriores la proporción de varianza acu-
mulada por el α-esimo factor y la proporción de varianza acumulada
en los primeros r factores son respectivamente:
Pr
λα λi
τα = Pp , τr = Pi=1
p (19)
λ
i=1 i i=1 λi

JCorzo ACP
Propiedades de los componentes principales
Covarianzas y correlaciones entre los factores y las variables
Sean λα y uα valor y vector propio de S, de manera que Suα = λα uα
y sea además Zα = Xuα la componente principal definida por uα .
Entonces las covarianzas entre Zα y las p variables se encuentran en
el vector:

1 0 1 1
Cov (Zα ; X ) = Z X = (Xuα )0 X = uα0 X 0 X = uα0 S = λα uα0
n α n n
Con las covarianzas se calcula la correlación entre el factor y la j-
ésima variable se calculan como es usual:

cov (Zα , xj ) λα uαj λα
Corr (Zα ; xj ) = p =q = uαj
Var (Zα )Var (xj ) λα sj2 sj

donde uαj es la j-ésima coordenada del α-ésimo vector propio.


JCorzo ACP
Ejemplo

Ejemplo
Cálculo de las componentes principales para el archivo que contiene
los indicadores de # de docentes de tiempo completo o equivalente
de 32 universidades públicas para los años 2008 y 2009.
Dicho archivo es parte del archivo general del Sistema de
Universidades Estatales SUE.

JCorzo ACP
Ejemplo Indicadores SUE

10 de las 32 universidades del SUE son:

JCorzo ACP
Continuación Ejemplo Indicadores SUE

JCorzo ACP
Ejemplo Indicadores SUE

JCorzo ACP
Continuación Ejemplo Indicadores SUE

JCorzo ACP
Continuación Ejemplo Indicadores SUE

El primero es un factor tamaño ex-


plica el 71 % de la varianza, es una
especie de promedio ponderado de
los ı́ndices de formación de los do-
centes universitarios.
Puede ser útil como indicador glo-
bal de la evolución de la formación
de los docentes.

JCorzo ACP
Continuación Ejemplo Indicadores SUE

El segundo factor distingue cla-


ramente entre docentes formados
solo a nivel de maestrı́a y docto-
rado (parte negativa) de los do-
centes que solo tienen formación
de pregrado y especialización en
la parte positiva.

JCorzo ACP
Interpretación del Biplot

JCorzo ACP
Biplot Universidades DTCE 2008 - 2009

JCorzo ACP
Continuación Ejemplo Indicadores SUE
Docentes TCE con doctorado.

Métodos no únicos de corroborar lo que dicen los factores


JCorzo ACP
Continuación Ejemplo Indicadores SUE
Docentes TCE con maestrı́a

Métodos no únicos de corroborar lo que dicen los factores


JCorzo ACP
Continuación Ejemplo Indicadores SUE
Docentes TCE con especialización

Métodos no únicos de corroborar lo que dicen los factores


JCorzo ACP
Continuación Ejemplo Indicadores SUE
Docentes TCE con pregrado

Métodos no únicos de corroborar lo que dicen los factores


JCorzo ACP
Individuos y Variables Ilustrativas

Variables ilustrativas o suplementarias: Se refieren a información


adicional sobre los objetos observados.
Individuos ilustrativos o suplementarios: Las mismas variables de
la tabla o encuesta original medida en otro grupo de objetos.

JCorzo ACP
Individuos y Variables Ilustrativas

Variables ilustrativas o suplementarias: Resulta muy ilustrativo


acompañar la interpretación de los factores con la información de
otras variables, sin incluirlas en el cálculo de los factores.
Individuos ilustrativos o suplementarios: Es un buen contraste
comparar los individuos observados directamente con otros indivi-
duos pertenecientes a otro grupo sin incluirlos en los cálculos

JCorzo ACP
Individuos y Variables Ilustrativas

JCorzo ACP
Individuos y Variables Ilustrativas

En los dos casos la técnica consiste en proyectarlos en las mismas


direcciones en que fueron proyectadas las variables (individuos), es
decir, en las direcciones de los vectores propios.
Por tanto las coordenadas para la proyección para las variables ilus-
trativas sobre el α-ésimo factor son:

(X + )0 vα

Donde vα es el α-ésimo vector propio de XX 0 . Para los individuos


ilustrativos:
(X+ )0 uα
Donde uα es el α-ésimo vector propio de X 0 X

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios
Se retiran UN y U de Antioquia para explorar si es posible identificar
algún otro aspecto que haga diferencias entre las instituciones.

Figura 4: Tres valores propios mayores que uno.

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios

Primer y segundo factores siguen


teniendo la misma interpretación,
solo que ahora explican menos
varianza: 80 % aproximadamente
entre ambos

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios
Todas las universidades Sin UN y U de Antioquia

Figura 5: UN y U de Antioquia ilustrativas

Al dejarlas como ilustrativas se notan más diferencias entre formación de


maestrı́a y formación doctoral
JCorzo ACP
UN y U de Antioquia como Individuos Complementarios

Plano 1 y 2

Primer y tercer factores


muestran en el cuadrante I
los indicadores de docentes
con doctorado y pregrado
¿Por qué?.
En el cuadrante IV se ven
muy cerca los indicadores de
especialización y maestrı́a.
La explicación de estas dos
mezclas se ve en el plano 2-3

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios

Plano 2 y 3
En el plano 2-3 se aprecia
claramente que las categorı́as que
parecı́an mezcladas en el plano
1-3 realmente se encuentran
opuestas.

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios

Valores Propios 1 y 3
Las universidades Nacional y de
Antioquia están proyectadas
como objetos ilustrativos.
Se observa cómo la del Valle y la
UIS se orientan ligeramente en la
dirección de las ilustrativas
indicando la relación existente
entre los indicadores de docentes
con doctorado y con maestrı́a.

JCorzo ACP
UN y U de Antioquia como Individuos Complementarios

Figura 6: Universidades sobre los valores propios 2 y 3

JCorzo ACP
Código para calcular las componentes:
Biblioteca requerida para el cálculo de las componentes
library(FactoMineR)

Biblioteca para los gráficos

library(TeachingDemos)
library(tkrplot)

Lectura de la base de datos desde archivo plano generado


por excel con extensión .csv
base=read.csv2("SUE_prg-preg-2003-2010.csv",header=T)
Vista de la base de datos en R con formato de hoja:
View(base)
Lectura de los nombres de la basede datos:
names(base)

JCorzo ACP
Preparación de la base para los cálculos
Recuperar nombres de filas que están en la primera columna
de la tabla:
NombresUnis=base[,1]

Asignar los nombres recuperados en el vector NombresUnis


a las filas:
rownames(base)=NombresUnis

Eliminar las dos priemeras columnas de la tabla


baseFinal=base[,-c(1,2)]

Vista de la base final arreglada para los cálculos:


View(baseFinal)

Cálculo de la matriz de covarianzas y la matriz


de correlación:
cov(baseFinal)
cor(baseFinal)

Exportación de la matriz de correlación en formato .csv


que se lee fácilmente en excel:
write.csv2(cor(baseFinal), file="SUE_Correlacion_prg-preg.csv")

JCorzo ACP
Algunos Gráficos de Interés
plot(baseFinal) # grafica la matriz de dispersión
de todos los pares de variables

plot(baseFinal[1:4]) #gráfico de las columnas 1 a 4


plot(baseFinal[5:10]) # gráfico de las columnas 5 a 10

par(mfrow=c(3,3)) #división del área de graficado


en 3 filas y 3 columnas

# el siguiente ciclo for construye gráficos por pares de


variables y le pone nombres o etiquetas a los puntos

for (k in 1:3){
for(l in 1:3){
plot(baseFinal[,k],baseFinal[,l], xlab=names(baseFinal)[k],
ylab=names(baseFinal)[l])
title("dispersión")
text(baseFinal[,k],baseFinal[,l],NombresUnis)
}
}

JCorzo ACP
Algunos Gráficos de Interés
#histogramas de las variables

par(mfrow=c(3,3))
for (j in 1:9){ #
hist(baseFinal[,j], main=paste("histograma")) }
# cálculo de las componentes

par(mfrow=c(1,1))

#por omisión lo hace con la matriz de correlación y produce


un gráfico de los objetos y otro de las variables ambos sobre
el plano factorial 1-2
pcaTODAS=PCA(baseFinal)
#Produce las componentes con un gráfico de los factores 1 y 3
pcaTODAS=PCA(baseFinal, axes=c(1,3))

#Produce las componentes con un gráfico de los factores 2 y 3


pcaTODAS=PCA(baseFinal, axes=c(2,3))

JCorzo ACP
El archivo pcaTODAS contiene la siguiente información
Name Description
1 ”$eig” ”eigenvalues”
2 ”$var” results for the variables”
3 ”$var$coord” ”coord. for the variables”
4 ”$var$cor” ”correlations variables - dimensions”
5 ”$var$cos2” ”cos2 for the variables”
6 ”$var$contrib” ”contributions of the variables”
7 ”$ind” results for the individuals”
8 ”$ind$coord” ”coord. for the individuals”
9 ”$ind$cos2” ”cos2 for the individuals”
10 ”$ind$contrib” ”contributions of the individuals”
11 ”$call” ”summary statistics”
12 ”$call$centre” ”mean of the variables”
13 ”$call$ecart.type” ”standard error of the variables”
14 ”$call$row.w” ”weights for the individuals”
15 ”$call$col.w” ”weights for the variables”

JCorzo ACP
Ejercicios del Capı́tulo

Utilizar el archivo que escogió para:


1 Calcular el vector de medias
2 Calcular la matriz de covarianzas
3 Calcular la matriz de correlación
4 Elaborar la matriz de dispersión
5 Detectar si hay observaciones (ciudades) atı́picas
6 Realizar un ACP (1) incluyendo las observaciones atı́picas
7 Analizar e interpretar los resultados
8 Eliminar las observaciones atı́picas y volver a realizar el
ACP(2)

JCorzo ACP
Ejercicios del Capı́tulo

9 Incluir las observaciones atı́picas como individuos


suplementarios y repetir el análisis
10 Analizar e interpretar los resultados
11 Establecer diferencias entre ACP(1) y ACP(2)

JCorzo ACP

Potrebbero piacerti anche