5. Encontrar la Matriz Identidad de una Matriz Dada
▸ numpy/introduccion-numpy-parte5En 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:
- Ser cuadrada (mismo número de filas y columnas).
- Tener determinante distinto de 0, es decir:
$$ \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.