ndarray는 NumPy 라이브러리의 핵심 객체로, 다차원 배열을 표현하는 자료구조야.
n-dimensional array의 줄임말로, 단일 타입의 데이터를 효율적으로 저장하고 연산할 수 있어.
기본 개념
ndarray는 뭐가 특별할까?
특징설명
| 다차원 지원 | 1D, 2D, 3D 이상도 가능 (n차원) |
| 빠른 연산 | C로 구현되어 있어 반복문보다 훨씬 빠름 |
| 데이터 타입 통일 | 배열 내 모든 원소가 같은 dtype |
| 브로드캐스팅 지원 | 차원이 달라도 연산 가능하게 함 |
| 팬시 인덱싱/마스킹 | 복잡한 조건 필터링 가능 |
생성 예시
import numpy as np
# 1차원 배열
a = np.array([1, 2, 3])
# 2차원 배열
b = np.array([[1, 2, 3], [4, 5, 6]])
# 3차원 배열
c = np.array([[[1], [2]], [[3], [4]]])
주요 속성
a = np.array([[1, 2, 3], [4, 5, 6]])
print(a.ndim) # 차원 수: 2
print(a.shape) # 배열 형태: (2, 3)
print(a.size) # 전체 요소 개수: 6
print(a.dtype) # 데이터 타입: int64 (플랫폼에 따라 다름)
ndarray와 일반 리스트 차이
항목listndarray
| 구조 | 가변 길이, 자료형 자유 | 고정 길이, 자료형 통일 |
| 속도 | 느림 | 빠름 (벡터화) |
| 연산 | 루프 필요 | +, * 등으로 가능 |
import numpy as np
a = [1, 2, 3]
b = np.array([1, 2, 3])
print(a * 2) # [1, 2, 3, 1, 2, 3]
print(b * 2) # [2, 4, 6]
'Data > 머신러닝_딥러닝' 카테고리의 다른 글
| 머신러닝에 수학이 필수 일까? (0) | 2025.09.18 |
|---|
댓글