십대를 위한 코딩/십대를 위한 파이썬

행렬(Matrix)이란?

forSilver 2025. 2. 24. 15:22
반응형

📌 행렬(Matrix)이란?

**행렬(Matrix)**은 숫자나 기호를 직사각형 형태로 배열한 2차원 데이터 구조입니다.
일반적으로 수학, 컴퓨터 그래픽, 데이터 분석, 머신러닝, 통계 등에서 널리 사용됩니다.


1. 행렬의 기본 개념

  • 행(Row): 가로 방향 (→)
  • 열(Column): 세로 방향 (↓)
  • 크기(Size, Shape): m × n (행 m, 열 n)

🔹 예제 1: 2×3 행렬 (2행 3열)

  • 2개의 행
  • 3개의 열
  • 행렬 크기: 2×3 (2행 3열)

2. 행렬의 표현 (Python & NumPy)

import numpy as np

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

print(A)
print("행렬 크기:", A.shape)  # (2, 3)

출력

[[1 2 3]
 [4 5 6]]
행렬 크기: (2, 3)

3. 행렬의 종류

1) 정방행렬 (Square Matrix)

  • 행과 열의 개수가 같은 행렬 (예: 3×3)


2) 영행렬 (Zero Matrix)

  • 모든 요소가 0인 행렬

Z = np.zeros((2, 2))
print(Z)

3) 단위행렬 (Identity Matrix)

  • 대각선 요소가 1이고, 나머지는 0인 정방행렬

I = np.eye(3)
print(I)

4. 행렬 연산

1) 행렬 덧셈 & 뺄셈

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

C = A + B  # 행렬 덧셈
print(C)

2) 행렬 곱셈 (Matrix Multiplication)

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

C = np.dot(A, B)  # 행렬 곱
print(C)

행렬 곱셈 조건:

  • 첫 번째 행렬의 열 개수 = 두 번째 행렬의 행 개수여야 함.

5. 행렬의 활용

데이터 분석 & 머신러닝

  • 데이터를 행렬 형태로 변환하여 학습 (ex: 이미지, 숫자 데이터)

컴퓨터 그래픽

  • 3D 변환(회전, 이동, 크기 변경)에 사용

물리학 & 공학

  • 전자기학, 양자역학, 구조공학 등에서 수식 계산

💡 결론

  • 행렬은 숫자의 2차원 배열
  • 행과 열로 구성되며 다양한 크기로 표현 가능
  • 기본 연산(덧셈, 곱셈, 전치 등)이 가능
  • 데이터 분석, 머신러닝, 그래픽스, 과학 계산에 필수적!