Autovalores y autovectores con Python

| Última modificación: 2 de julio de 2024 | Tiempo de Lectura: 2 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabías que se pueden manejar autovalores y autovectores con Python? En este post veremos un ejercicio relacionado con autovalores y autovectores con Python para entender mejor estos dos conceptos tan usados en NLP.

Autovalores y autovectores con Python: un ejercicio

Consideremos la siguiente matriz:

Autovalores y autovectores con Python

Tenemos la matriz 3, 2 / 7, -2. Para calcular los autovalores y autovectores con Python tenemos que utilizar el módulo linalg y usar la función eig de numpy.

Entonces, el resultado serán los eigenvalues o eigenvalores, que corresponderán al primer componente x; y los eigenvectors o eigenvectores relacionados con el segundo componente v.

#Autovalores y autovectores con Python
import numpy as np

A = np.array ([[3,  2],
                         [7,  -2]])

x, v = np.linalg.eig (A)
print ("Eigenvalue: ", x)
print ("Eigenvectors: ", v)

Eigenvalue: [ 5. -4. ]

Eigenvectors:

[[ 0.70710678 -0.27472113]

[ 0.70710678 0.96152395]]

En este caso, tenemos dos autovalores y dos autovectores. Siempre la relación de proporcionalidad entre autovalores y autovectores será de [1 : 1]. Por esta razón, si hay un autovalor, necesariamente tiene que haber un solo autovector y viceversa; lo mismo que si hay dos, tres o n. La fórmula de esta regla es:

Ax = λx

Entonces, el autovalor del primer vector es 5 y el autovalor del segundo vector es -4.

Ahora, también podemos calcular autovalores y autovectores con Python usando sympy. En este caso, en vez de devolver dos componentes, devuelve una variable, pero tenemos que acceder a los valores internos usando el A.eigenvals () y el A.eigenvects ():

#Autovalores y autovectores con Python
import sympy

A = sympy.Matrix ([[3,  2],
                                  [7,  -2]])
print ("Eigenvalue: ", A.eigenvals ())
print ("Eigenvectors: ", A.eigenvects ())
Eigenvalue: {5: 1, -4: 1}
Eigenvectors:
  [(-4,  1,  [Matrix ([
[-2 / 7],
[  1]])]), (5,  1,  [Matrix ([
[1],
[1]])])]

Nos daría exactamente el mismo resultado, solo que la distribución en el resultado es un poco distinta.

Ahora que hemos visto cómo funcionan los autovalores y autovectores en Python, podemos seguir aprendiendo y dar un paso más en el mundo de la programación.

Si quieres seguir formándote, podrás acceder a una de las disciplinas más demandadas y con mejores sueldos de todo el mercado laboral en pocos meses con la guía del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp. Se trata de una formación íntegra e intensiva en la que adquirirás todos los conocimientos, tanto teóricos como prácticos, para obtener el trabajo de tus sueños. ¡Entra ya para solicitar información e impulsa tu carrera!

Sandra Navarro

Business Intelligence & Big Data Advisor & Coordinadora del Bootcamp en Data Science, Big Data & Machine Learning.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado