Python - Matriz 2D

La matriz bidimensional es una matriz dentro de una matriz. Es una matriz de matrices. En este tipo de matriz, la posición de un elemento de datos se refiere a dos índices en lugar de uno. Por tanto, representa una tabla con filas y columnas de datos. En el siguiente ejemplo de una matriz bidimensional, observe que cada elemento de la matriz en sí también es una matriz.

Considere el ejemplo de registrar las temperaturas 4 veces al día, todos los días. Algunas veces, el instrumento de grabación puede estar defectuoso y no podemos registrar los datos. Estos datos de 4 días se pueden presentar como una matriz bidimensional como se muestra a continuación.

Day 1 - 11 12 5 2 
Day 2 - 15 6 10 
Day 3 - 10 8 12 5 
Day 4 - 12 15 8 6

Los datos anteriores se pueden representar como una matriz bidimensional como se muestra a continuación.

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

Acceder a valores en una matriz bidimensional

Se puede acceder a los elementos de datos en dos matrices dimensionales utilizando dos índices. Un índice que se refiere a la matriz principal o principal y otro índice que se refiere a la posición del elemento de datos en la matriz interna. Si mencionamos solo un índice, entonces se imprime toda la matriz interna para esa posición de índice. El siguiente ejemplo ilustra cómo funciona.

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

print(T[0])

print(T[1][2])

Cuando se ejecuta el código anterior, produce el siguiente resultado:

[11, 12, 5, 2]
10

Para imprimir la matriz bidimensional completa, podemos usar python for loop como se muestra a continuación. Usamos el final de la línea para imprimir los valores en diferentes filas.

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]
for r in T:
    for c in r:
        print(c,end = " ")
    print()

Cuando se ejecuta el código anterior, produce el siguiente resultado:

11 12 5 2 
15 6 10 
10 8 12 5 
12 15 8 6

Insertar valores en una matriz bidimensional

Podemos insertar nuevos elementos de datos en una posición específica usando el método insert () y especificando el índice.

En el siguiente ejemplo, se inserta un nuevo elemento de datos en la posición de índice 2.

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

T.insert(2, [0,5,11,13,6])

for r in T:
    for c in r:
        print(c,end = " ")
    print()

Cuando se ejecuta el código anterior, produce el siguiente resultado:

11 12 5 2 
15 6 10 
0 5 11 13 6 
10 8 12 5 
12 15 8 6

Actualización de valores en matriz bidimensional

Podemos actualizar toda la matriz interna o algunos elementos de datos específicos de la matriz interna reasignando los valores usando el índice de la matriz.

from array import *

T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

T[2] = [11,9]
T[0][3] = 7
for r in T:
    for c in r:
        print(c,end = " ")
    print()

Cuando se ejecuta el código anterior, produce el siguiente resultado:

11 12 5 7 
15 6 10 
11 9 
12 15 8 6

Eliminando los valores en una matriz bidimensional

Podemos eliminar toda la matriz interna o algunos elementos de datos específicos de la matriz interna reasignando los valores usando el método del () con index. Pero en caso de que necesite eliminar elementos de datos específicos en una de las matrices internas, utilice el proceso de actualización descrito anteriormente.

from array import *
T = [[11, 12, 5, 2], [15, 6,10], [10, 8, 12, 5], [12,15,8,6]]

del T[3]

for r in T:
    for c in r:
        print(c,end = " ")
    print()

Cuando se ejecuta el código anterior, produce el siguiente resultado:

11 12 5 2 
15 6 10 
10 8 12 5