MINVERSE(array) 수학 함수
MMULT(array1,array2) 수학 함수
TRANSPOSE(array) 찾기 함수
행렬의 역행렬을 구해줍니다. 역행렬은 행렬식(determinant)가 0이 아닐 때 딸림행렬(adjoint)과의 곱으로 구해집니다.
![]()
딸림행렬(adjoint)는 여인수들로 된 행렬의 위치를 바꾼 행렬로 다음과 같이 표시 가능합니다.

우선 여인수들의 행렬을 구해볼까요? 여인수들은 남은 인수들의 행렬식으로 구한 값이 됩니다.

행렬식이 위와 같이 되어있을 때, 여인수는 다음과 같이 구할 수 있습니다. 여인수를 구하기 위해서 행렬을 확장해 주었습니다.

이제 TRANSPOSE부터 사용해서 위치를 변경해 볼까요? TRANSPOSE를 다음과 같이 입력해 줍니다.

제대로 한거 같은데 #VALUE!가 나오는군요. 이는 TRANSPOSE결과는 배열로 나와야 되는데 칸으로 받아서 나오는 현상으로 우선 B11:D13까지 블록을 선택한 후 F2 버튼을 눌러서 편집 상태로 들어간 다음에 Ctrl+Shift+Enter로 선택된 블록을 배열로 만들어 주어야 합니다.

왠 #FORMULA! 오류. 여인수 부분에 수식이 있다고 계산을 안 해 주네요. 여인수 부분을 그대로 값으로 오른쪽으로 복사한 후 다시 TRANSPOSE를 해 보았습니다.

딸림 행렬을 구했네요. 이제 밑에 행렬식을 구해서 TRANSPOSE한 결과값에 나눠줍니다.

이제 오른쪽에 MINVERSE를 구해볼까요?

TRANSPOSE와 같은 방법으로 F15:H17까지를 선택한 후 F2버튼으로 편집상태로 간 다음에 Ctrl+Shift+Enter로 배열로 만들어주면 짜잔 하고 역행렬이 나타납니다.

양쪽 내용이 같아졌네요. 역행렬이 맞는지 행렬곱을 구해볼까요? array내용과 MINVERSE내용을 MMULT로 구해보면 됩니다.

행렬곱이 1이 나오므로 역행렬이 맞네요. 행렬곱은 첫 번째 행렬의 가로항과 두 번째 행렬의 세로항을 서로 곱한 합의 행렬식으로 구할 수 있습니다. 행렬을 우선 계산한 다음에 행렬식을 구하면 다음과 같습니다.

-9.992E-16는 오류값으로 행렬식은 1이 나오게 됩니다.




덧글