19/09/2019, 01:19:06 am *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias: Homenaje a NUMERARIUS
 
 
Páginas: [1]   Ir Abajo
  Imprimir  
Autor Tema: Análisis de coeficientes principales con python  (Leído 814 veces)
0 Usuarios y 1 Visitante están viendo este tema.
marsi
Pleno*
*****

Karma: +0/-0
Desconectado Desconectado

Sexo: Femenino
México México

Mensajes: 120


Ver Perfil
« : 08/03/2016, 03:20:13 am »

Hola, espero puedan ayudarme con lo siguiente:
Me pidieron realizar el análisis de coeficientes principales, pero no sé si este haciendo el procedimiento correcto a la hora de programar, esto es lo que tengo:
X1=[ 0. 56. 38. 134. 804. 213. 242. 93. 0. 104.
2621. 492. 492. 458. 514. 659. 388. 122. 46. 791.
338. 148. 109. 301. 176. 433. 412. 318. 38. 1280.
237. 169.]
X2=[ 3.95388745 3.54900299 3.50932407 3.75996313 4.1997148 3.5672546
3.73093164 3.53977554 3.52112017 3.90807648 3.94190676 4.10977109
3.99836109 3.88252275 3.88621978 3.89964364 3.70512848 3.63711259
3.77632171 3.90266526 4.01128119 3.89498203 3.51986151 3.92666346
3.79770285 3.66035377 3.85751196 3.58895079 4.12491693 3.7105939
3.75576998 3.86993742]
X3=[ 1.16277303 1.26665937 1.07130697 0.9206689 0. 0.95451146
1.08282505 1.40357496 0.47038141 1.16883537 0.98319487 0.7925191
0.48986252 0.06235258 0.59990324 0.2064521 0.71364469 0.72530484
1.14226178 0.58951107 0.77785688 0.9888759 1.05809137 0.93454583
0.61335991 1.01689888 0.79148081 1.15620494 0.9040832 0.81415175
1.17087652 0.95155396]
X4=[ 8.18027211e-01 3.85560676e-01 3.33333333e-01 2.95681063e-01
0.00000000e+00 2.37639061e-01 6.49621212e-01 1.17543860e+00
0.00000000e+00 3.28566786e-01 0.00000000e+00 5.54967168e-02
2.00951420e-01 1.09383995e-01 3.57781753e-03 1.40845070e-04
9.97326203e-01 1.72413793e-02 2.47165160e+00 2.09319145e-01
4.95088780e-01 6.04782882e-01 3.78960710e-01 2.91821561e-01
1.75732218e-01 6.72000000e-01 9.46208684e-01 2.22696766e-01
8.95442359e-01 3.92599934e-01 2.90559120e-01 1.17413572e+00]
X5=[ 7.09183673e-01 2.61136713e-02 6.91823899e-02 1.66112957e-02
5.91579512e-02 5.33065513e-02 2.46212121e-01 5.38011696e-01
0.00000000e+00 2.82092948e-01 4.86627907e-01 0.00000000e+00
0.00000000e+00 2.47553253e-02 4.47227191e-03 1.40845070e-04
9.49197861e-01 6.48275862e-02 2.31306491e+00 3.77105073e-02
2.93917643e-01 1.82504720e-01 2.15462611e-02 2.41842214e-01
1.02700647e-01 1.69454545e-01 3.38302009e-01 5.24710189e-02
8.12332440e-01 8.40436075e-02 1.83318057e-03 5.87067862e-01]
# Lo primero  es:
sample = np.concatenate((X1,X2,X3,X4,X5), axis=1)
assert [sample.shape == (5,32)," The matrix has not the dimensions 5x32"]
print sample
mean_x = np.mean(sample[1])
mean_y = np.mean(sample[2])
mean_z = np.mean(sample[3])
mean_w = np.mean(sample[4])
mean_v = np.mean(sample[5])
mean_vector = np.array([[mean_x],[mean_y],[mean_z],[mean_w],[mean_v]])
#-----imprimo el vector de Medias

print mean_vector
#-------------En las siguientes parte trato de calcular la matriz de dispersión, pero no me compila mi código y no encuentro como corregirlo
matrix = np.zeros((5,32))
for i in range(sample.shape[1]):
matrix += (sample[:i].reshape(5,1) - mean_vector).dot((sample[:i].reshape(5,1) - mean_vector).T)
print matrix
#------------por otra parte mi pregunta es que después de crear la matriz de dispersión con la siguiente instrucción podría calcular la matriz de covarianza.
cov_mat = np.cov([sample[0:],sample[1:],sample[2:]])
#------------- porque también probé solo con  la siguiente instrucción pero no sé si agá los cálculos de manera correcta o si los demás cálculos que hice antes están de mas
cov_mat = np.cov([X1X2,X3,X4,X5])
Mc=np.corrcoef([X1X2,X3,X4,X5])
print Mc
En línea
Páginas: [1]   Ir Arriba
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC XHTML 1.0 válido! CSS válido!