5. Encontrar la Matriz Identidad de una Matriz Dada

numpy/introduccion-numpy-parte5
@Lautaroff 04-03-2025

En esta guía aprenderás a encontrar la matriz identidad a partir de una matriz dada, utilizando su inversa.

📌 1. ¿Qué es la Matriz Identidad?

La matriz identidad es una matriz cuadrada donde todos los elementos de la diagonal principal son 1 y los demás son 0. Se denota como I y tiene la propiedad:

A * A^-1 = I

donde A es una matriz invertible y A^-1 es su inversa.

Ejemplo de matriz identidad de 2x2:

I₂ = [ [1, 0],
       [0, 1] ]

Ejemplo de matriz identidad de 3x3:

I₃ = [ [1, 0, 0],
       [0, 1, 0],
       [0, 0, 1] ]

📌 2. ¿Cuándo una Matriz Tiene Inversa?

No todas las matrices tienen inversa. Para que una matriz A sea invertible, debe cumplir:

$$ \det(A) \neq 0 $$

Si el determinante es 0, la matriz se llama singular y no tiene inversa.

📌 3. Cómo Encontrar la Matriz Identidad en Python

Para encontrar la matriz identidad de una matriz dada, seguimos estos pasos en NumPy:

🔹 Paso 1: Definir la matriz en NumPy

import numpy as np

A = np.array([[1, 2],
              [3, 4]])  # Matriz 2x2

🔹 Paso 2: Verificar si tiene inversa

det_A = np.linalg.det(A)
if det_A == 0:
    print("La matriz no tiene inversa")
else:
    print(f"Determinante: {det_A}")

🔹 Paso 3: Calcular la inversa

A_inv = np.linalg.inv(A)
print("Matriz Inversa:")
print(A_inv)

🔹 Paso 4: Multiplicar la matriz con su inversa

I = A @ A_inv  # Multiplicamos A por su inversa
I_rounded = np.round(I, 10)  # Redondeamos para evitar errores numéricos

print("Matriz Identidad obtenida:")
print(I_rounded)

📌 4. Ejemplo Completo

import numpy as np

# Definir matriz
A = np.array([[1, 2],
              [3, 4]])

# Verificar si tiene inversa
if np.linalg.det(A) == 0:
    print("La matriz no tiene inversa")
else:
    # Calcular la inversa
    A_inv = np.linalg.inv(A)
    
    # Multiplicar A por su inversa
    I = A @ A_inv
    I_rounded = np.round(I, 10)  # Redondeamos para evitar errores de punto flotante
    
    print("Matriz Identidad:")
    print(I_rounded)

Conclusión:
Si una matriz es cuadrada e invertible, podemos encontrar su matriz identidad multiplicándola por su inversa. Usamos np.linalg.inv(A) y redondeamos para evitar errores numéricos.

Lección Anterior Curso Siguiente Lección