Eliminación de filas o columnas en matrices con Matlab

En esta clase, te mostraré cómo puedes eliminar una fila o columna específica de una matriz utilizando Matlab.

A continuación, un ejemplo práctico para ilustrarlo.

Primero, creamos una matriz de 3x3, con tres filas y tres columnas:

>> M=[1 2 3; 4 5 6; 7 8 9]
ans =
1 2 3
4 5 6
7 8 9

Para eliminar la primera fila, utilizamos la instrucción M(1,:)=[ ]:

>> M(1,:)=[ ]
ans =
4 5 6
7 8 9

Expliquemos este comando:

  • El '1' en M(1,:) indica que estamos seleccionando la primera fila de la matriz.
  • El símbolo de dos puntos (:) en M(1,:) representa la selección de todas las columnas en esa fila.

Así, M(1,:)=[ ] reemplaza el contenido de toda la primera fila con un valor nulo [ ], resultando en su eliminación.

$$ \begin{pmatrix} \not{1} & \not{2} & \not{3} \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{pmatrix} $$

Con esto, la primera fila de la matriz se elimina por completo.

$$ \begin{pmatrix} 4 & 5 & 6 \\ 7 & 8 & 9 \end{pmatrix} $$

El resultado es una matriz de 2x3, con dos filas y tres columnas.

Nota: Para eliminar otras filas, basta con cambiar el número de la fila. Por ejemplo, para quitar la segunda fila, usaríamos M(2,:)=[ ]. Cada fila se identifica por su número, comenzando por 1 para la primera fila, 2 para la segunda, y así sucesivamente.

Recreemos la matriz 3x3:

>> M=[1 2 3; 4 5 6; 7 8 9]
ans =
1 2 3
4 5 6
7 8 9

Para eliminar la tercera columna, usamos M(:,3)=[ ]:

>> M(:,3)=[ ]
ans =
1 2
4 5
7 8

Este comando selecciona todas las filas (:) de la tercera columna y les asigna un valor nulo.

$$ \begin{pmatrix} 1 & 2 & \not{3} \\ 4 & 5 & \not{6} \\ 7 & 8 & \not{9} \end{pmatrix} $$

De esta manera, se elimina la tercera columna de la matriz.

$$ \begin{pmatrix} 1 & 2 \\ 4 & 5 \\ 7 & 8 \end{pmatrix} $$

El resultado es una matriz rectangular de 3x2, con tres filas y dos columnas.

¿Cómo eliminar varias filas o columnas al mismo tiempo?

Si deseas eliminar múltiples filas o columnas en la matriz, debes indicar la lista de columnas o filas que quieres quitar entre corchetes.

Por ejemplo, crea una matriz de 4x4:

>> M=[1 2 3 4; 5 6 7 8; 9 8 7 6; 5 4 3 2]
M =
1 2 3 4
5 6 7 8
9 8 7 6
5 4 3 2

Para eliminar la primera y última fila, escribe el comando M([1 4] ,:)=[ ]

La lista de filas a eliminar debe escribirse entre corchetes [ 1 4 ] en el primer parámetro del comando.

Separa los números de fila de

>> M([1 4] ,:)=[ ]
M =
5 6 7 8
9 8 7 6

El comando M([1 4],:)=[ ] elimina la primera y tercera fila de la matriz.

$$ \begin{pmatrix} \not{1} & \not{2} & \not{3} & \not{4} \\ 5 & 6 & 7 & 8 \\ 9 & 8 & 7 & 6 \\ \not{5} & \not{4} & \not{3} & \not{2} \end{pmatrix} $$

El resultado es una matriz rectangular de 2x4 con dos filas y cuatro columnas.

$$ \begin{pmatrix} 5 & 6 & 7 & 8 \\ 9 & 8 & 7 & 6 \end{pmatrix} $$

Ahora, para eliminar la segunda, tercera y cuarta columna, escribe el comando M(:,[2 3 4])=[ ]

En este caso, la lista de columnas a eliminar [ 2 3 4 ] consta de tres columnas.

>> M(:,[2 3 4])=[ ]
M =
5
9

El comando M(:,[2 3 4])=[ ] elimina la segunda, tercera y cuarta columna de la matriz:

$$ \begin{pmatrix} 5 & \not{6} & \not{7} & \not{6} \\ 9 & \not{8} & \not{7} & \not{6} \end{pmatrix} $$

El resultado es una matriz de 2x1, o un vector columna.

$$ \begin{pmatrix} 5 \\ 6 \end{pmatrix} $$

Antes de finalizar, te dejo un último consejo práctico.

Cuando las filas o columnas son consecutivas, también puedes indicar el intervalo entre la primera y última insertando dos puntos (:) como separador, en lugar de listarlas todas en una lista.

Por ejemplo, para eliminar la segunda, tercera y cuarta columna, también puedes escribir M(:,[2:4])=[ ]

En este caso, estás indicando el intervalo entre las columnas [2:4] en lugar de la lista [2 3 4].

>> M(:,[2:4])=[ ]
M =

5
9

El resultado final sigue siendo el mismo.

De esta manera, puedes eliminar cualquier fila o columna de una matriz cuando usas Matlab.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Matrices en Matlab

Preguntas Frecuentes