기본 콘텐츠로 건너뛰기

pandas_ta를 적용한 통계적 인덱스 지표

[Linear Algebra] 정방 행렬 (Square matrix)과 트레이스(Trace)

정방 행렬 (Square matrix)과 트레이스(Trace)

내용

정방 행렬 (Square matrix)

식 1의 행렬 A와 같이 열과 행의 갯수가 동일한 행렬을 정방 행렬이라 하고 이 정방 행렬의 전치 행렬($A^T$)은 식 1과 같이 주 대각(main diagonal)외 요소들의 대칭적 교환으로 이루어집니다.

$$A=\begin{bmatrix}{\color{red}a_{11}} & a_{12} & a_{13}\\ a_{21} & {\color{red}a_{22}} & a_{23}\\a_{31} & a_{32} & {\color{red}a_{33}}\end{bmatrix}\;\Rightarrow\; A^T= \begin{bmatrix}{\color{red}a_{11}} & a_{21} & a_{31}\\ a_{12} & {\color{red}a_{22}} & a_{32}\\a_{13} & a_{23} & {\color{red}a_{33}}\end{bmatrix}$$(식 1)

위 식의 붉은 색이 주 대각 요소들입니다.

A=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(A)
[[1 2 3]
 [4 5 6]
 [7 8 9]]
print(A.T)
[[1 4 7]
 [2 5 8]
 [3 6 9]]

트레이스(Trace)

정방 행렬에서 대각 요소들의 합을 그 행렬의 트레이스라고 하며 tr(A)라고 나타냅니다(식 2).

$$A=\begin{bmatrix}{\color{red}a_{11}} & a_{12} & a_{13}\\ a_{21} & {\color{red}a_{22}} & a_{23}\\a_{31} & a_{32} & {\color{red}a_{33}}\end{bmatrix}\;\Rightarrow\; \text{tr(A)}= a_{11}+a_{22}+a_{33}$$(식 2)

np.trace(A) 함수를 사용하여 계산합니다.

np.random.seed(1)
A=np.random.randint(1,10, (3,3)) 
print(A)
[[6 9 6]
 [1 1 2]
 [8 7 3]]
np.trace(A)
10
tr=0
for i in range(A.shape[0]):
    tr += A[i,i]
tr
10

댓글