2012-05-16 18 views
18

que tiene una matriz de esta manera:Extracción n primeras columnas de una matriz numpy

array([[-0.57098887, -0.4274751 , -0.38459931, -0.58593526], 
     [-0.22279713, -0.51723555, 0.82462029, 0.05319973], 
     [ 0.67492385, -0.69294472, -0.2531966 , 0.01403201], 
     [ 0.41086611, 0.26374238, 0.32859738, -0.80848795]]) 

Ahora quieren extraer lo siguiente:

[-0.57098887, -0.4274751] 
    [-0.22279713, -0.51723555] 
    [ 0.67492385, -0.69294472] 
    [ 0.41086611, 0.26374238] 

Así que, básicamente, sólo 2 primeras columnas ..

+3

documentación Numpy: [rebanar] (http://docs.scipy.org/doc/numpy/reference/arrays.indexing.html#arrays-indexing). Siempre revise la documentación primero. –

+1

@JoelCornett: Gracias ... cortar es el término ... se pone muy difícil si conoces el concepto pero no el término ... :) muchas gracias :) – Fraz

Respuesta

42

Si a es su matriz:

In [11]: a[:,:2] 
Out[11]: 
array([[-0.57098887, -0.4274751 ], 
     [-0.22279713, -0.51723555], 
     [ 0.67492385, -0.69294472], 
     [ 0.41086611, 0.26374238]]) 
3

Sé que esto absolutamente una vieja pregunta -

A = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]] 

Digamos que desea extraer - 2 primeras filas y primeras 3 columnas

A_NEW = A[0:2,0:3] 
A_NEW = [[1,2,3],[4,5,6]] 

Entender la sintaxis

A_NEW = A[Start_index : stop_index, start_index : stop_index)] 

Si uno quiere la fila 2 y la columna 2 y 3

A_NEW = A[1:2,1:3] 

referencia la indexación y rebanar artículo numpy - Indexing & Slicing

Cuestiones relacionadas