본문 바로가기
Python/numpy

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

by PySun 2024. 10. 4.
반응형

NumPy linalg.inv 함수: 행렬의 역행렬 구하기

파이썬의 NumPy 라이브러리는 과학적 계산을 위한 강력한 도구를 제공합니다. 그 중 특히 numpy.linalg.inv 함수는 주어진 행렬의 역행렬을 구하는 데 매우 유용합니다. 이 포스팅에서는 numpy.linalg.inv 함수의 사용법과 예제를 소개합니다.

numpy.linalg.inv 함수 소개

numpy.linalg.inv 함수는 정방 행렬(행과 열의 수가 같은 행렬)의 역행렬을 계산합니다. 역행렬은 주어진 행렬과 곱했을 때 단위 행렬을 만들어 주는 행렬입니다. 따라서 선형 방정식의 해를 구하는 데 필수적일 때가 많습니다.

함수 시그니처

numpy.linalg.inv(a)

매개변수:

  • a: 역행렬을 구할 정방 행렬입니다.

반환 값:

  • 입력된 행렬 a의 역행렬을 반환합니다.

사용 예제

기본 예제

다음은 numpy.linalg.inv 함수를 사용하여 2x2 행렬의 역행렬을 구하는 기본 예제입니다.

import numpy as np

# 2x2 행렬 생성
matrix = np.array([[4, 7],
                   [2, 6]])

# 역행렬 계산
inverse_matrix = np.linalg.inv(matrix)

print("Original Matrix:\n", matrix)
print("Inverse Matrix:\n", inverse_matrix)
# 출력:
# Original Matrix:
# [[4 7]
#  [2 6]]
# Inverse Matrix:
# [[ 0.6 -0.7]
#  [-0.2  0.4]]

3x3 행렬의 역행렬 구하기

이번에는 3x3 행렬의 역행렬을 구하는 예제를 보겠습니다. 역행렬을 구하는 과정은 유사하지만, 행렬의 크기가 다르기 때문에 약간의 차이가 있습니다.

import numpy as np

# 3x3 행렬 생성
matrix_3x3 = np.array([[1, 2, 3],
                       [0, 1, 4],
                       [5, 6, 0]])

# 역행렬 계산
inverse_matrix_3x3 = np.linalg.inv(matrix_3x3)

print("Original 3x3 Matrix:\n", matrix_3x3)
print("Inverse 3x3 Matrix:\n", inverse_matrix_3x3)
# 출력:
# Original 3x3 Matrix:
# [[1 2 3]
#  [0 1 4]
#  [5 6 0]]
# Inverse 3x3 Matrix:
# [[-24. -18.   20.]
#  [ 20.  15.  -12.]
#  [ -5.  -4.    5.]]

결론

numpy.linalg.inv 함수는 행렬의 역행렬을 쉽게 계산할 수 있는 강력한 도구입니다. 이러한 역행렬은 선형 대수와 데이터 과학 분야에서 많은 응용 프로그램에 사용되며, 이를 통해 복잡한 문제를 해결할 수 있습니다.

  • 직관적으로 역행렬을 구하고 싶다면 numpy.linalg.inv 함수를 활용해 보세요!
  • 여러 행렬의 역행렬을 비교해 보면서 선형 대수의 매력을 더 느껴보세요!
반응형