Escolar Documentos
Profissional Documentos
Cultura Documentos
Y sus Aplicaciones
Este archivo seleccionado en Excel debe ser convertido a un archivo tipo texto
(ascii) previamente a ser utilizado en MATLAB. Supongamos que el nombre
del archivo tipo texto se llamar data.txt.
Se recomienda el uso del par de comandos diary on, al principio del ejercicio,
y diary off, al terminar todo el trabajo, para que quede registrado todo el
1
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
diary labacp
load data.txt
XY=data;
X=XY(:,2:10);
size(X)
ans =
Revise. El resultado
X(1:1,1:9)
ans =
Revise .. el resultado
2
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
Y=XY(:,11)
help SVD
De acuerdo a este mtodo podemos obtener una matriz diagonal que incluye
los valores propios de la matriz simtrica.
Para nuestro caso la matriz simtrica es la matriz de correlacin.
3
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
R=corrcoef(X);
Revise .. el resultado
[u,lambda,v]=svd(R);
donde:
Revise .. el resultado
lambda
Revise .. el resultado
Por otro lado, los componentes principales quedan definidos por los
4
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
autovectores v.
Es decir,
Revise .. el resultado
v(1:1,:)*v(2:2,:)'
ans =
Revise .. el resultado
trace(R)
ans =
trace(lambda)
5
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
ans =
help pcacov
[cp,lambda,explicacion]=pcacov(R);
donde:
cp: matriz de componentes principales,
lambda: matriz diagonal con los autovalores de R,
explicacion: porcentaje explicado de la varianza por cada uno de los
componentes.
6
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
cp
lambda'
El porcentaje explicado por cada una de las variables al ser transformadas es:
explicacion'
plot(lambda)
7
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
4.5
3.5
2.5
1.5
0.5
0
1 2 3 4 5 6 7 8 9
Se estandariza variable por variable con media cero y varianza uno, a fin rotar
las observaciones originales y contabilizar cada una de las variables originales
en el vector x en su equivalente de variables latentes z (estos son los scores).
Para este caso se dispone de 252 observaciones, entonces los comandos seran
para cada una de las 9 variables estandarizadas
sx1=(X(:,1:1)-ones(252,1).*mean(X(:,1:1)))./sqrt(var(X(:,1:1)));
sx2=(X(:,2:2)-ones(252,1).*mean(X(:,2:2)))./sqrt(var(X(:,2:2)));
sx3=(X(:,3:3)-ones(252,1).*mean(X(:,3:3)))./sqrt(var(X(:,3:3)));
sx4=(X(:,4:4)-ones(252,1).*mean(X(:,4:4)))./sqrt(var(X(:,4:4)));
sx5=(X(:,5:5)-ones(252,1).*mean(X(:,5:5)))./sqrt(var(X(:,5:5)));
sx6=(X(:,6:6)-ones(252,1).*mean(X(:,6:6)))./sqrt(var(X(:,6:6)));
sx7=(X(:,7:7)-ones(252,1).*mean(X(:,7:7)))./sqrt(var(X(:,7:7)));
sx8=(X(:,8:8)-ones(252,1).*mean(X(:,8:8)))./sqrt(var(X(:,8:8)));
sx9=(X(:,9:9)-ones(252,1).*mean(X(:,9:9)))./sqrt(var(X(:,9:9)));
Compilamos en una matriz SX todos los vectores que contienen las variables
originales estandarizadas
Z1=SX*cp;
Z2=SX*v;
Z1-Z2;
Revise .. el resultado
who
R cp sx3 sx9
SX data250 sx4 u
X explicacion sx5 v
Z1 lambda sx6
Z2 sx1 sx7
ans sx2 sx8
9
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
who
R cp sx3 sx9
SX data250 sx4 u
X explicacion sx5 v
Z1 lambda sx6 xsyy_250
Z2 sx1 sx7
ans sx2 sx8 Y
size(Y)
Revise .. el resultado
Sera
ZY=[Z1 Y];
10
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
Ahora
Rxy = corrcoef(ZY)
Revise .. el resultado
Rxy(:,10)
11
Anlisis Multivariante Laboratorio I Gerardo Colmenares
Y sus Aplicaciones
DatosZY = [Var_reducidas,Y];
size(DatosZY)
Revise .. el resultado
12