본문 바로가기
Python/numpy

파이썬 numpy.linalg.eig 함수 활용하기

by PySun 2024. 10. 4.
반응형

NumPy linalg.eig 함수: 고유값과 고유벡터 계산하기

파이썬의 NumPy 라이브러리에서 제공하는 numpy.linalg.eig 함수는 행렬의 고유값과 고유벡터를 계산하는 데 유용합니다. 이 포스팅에서는 numpy.linalg.eig 함수의 작동 원리와 함께 실용적인 예제를 소개합니다.

numpy.linalg.eig 함수 소개

numpy.linalg.eig 함수는 주어진 정사각형 행렬의 고유값(eigenvalues)과 고유벡터(eigenvectors)를 계산합니다. 이는 데이터 분석, 시스템 동역학, 기계 학습 등 여러 분야에서 중요한 역할을 합니다.

함수 시그니처

numpy.linalg.eig(a)

매개변수:

  • a: 고유값과 고유벡터를 계산할 정사각형 배열입니다.

반환 값:

  • 고유값과 고유벡터를 포함한 두 개의 배열을 반환합니다. 첫 번째 배열은 고유값, 두 번째 배열은 고유벡터를 나타냅니다.

사용 예제

기본 예제

이제 numpy.linalg.eig 함수를 사용하여 간단한 행렬의 고유값과 고유벡터를 계산하는 기본 예제를 살펴보겠습니다.

import numpy as np

# 정사각형 행렬 생성
A = np.array([[4, -2],
              [1, 1]])

# 고유값과 고유벡터 계산
eigenvalues, eigenvectors = np.linalg.eig(A)

print("고유값:", eigenvalues)
print("고유벡터:\n", eigenvectors)
# 출력:
# 고유값: [3. 2.]
# 고유벡터:
# [[ 0.89442719 -0.70710678]
#  [ 0.4472136   0.70710678]]

복잡한 행렬 예제

다양한 고유값 문제를 다루기 위해 복잡한 행렬의 고유값과 고유벡터를 계산해 보겠습니다.

import numpy as np

# 더 복잡한 정사각형 행렬 생성
B = np.array([[1, 2],
              [3, 4]])

# 고유값과 고유벡터 계산
eigenvalues_B, eigenvectors_B = np.linalg.eig(B)

print("B의 고유값:", eigenvalues_B)
print("B의 고유벡터:\n", eigenvectors_B)
# 출력:
# B의 고유값: [-0.37228132  5.37228132]
# B의 고유벡터:
# [[-0.82456432 -0.41597356]
#  [ 0.56576746 -0.90937666]]

결론

numpy.linalg.eig 함수를 사용하면 행렬의 고유값과 고유벡터를 간편하게 계산할 수 있습니다. 이는 많은 수학적 및 물리적 문제를 해결하는 데 필수적인 도구로 자리 잡고 있습니다. 다양한 분야에서 이 기능을 활용하여 데이터 분석과 시스템 동역학 문제를 해결해 보세요!

  • numpy.linalg.eig 함수를 통해 고유값 문제를 손쉽게 해결해 보세요!
  • 지금 바로 행렬의 고유값과 고유벡터를 계산하여 데이터 분석의 새로운 세계를 탐험해 보세요!
반응형