배열 생성 및 속성
np.array(), np.zeros/ones/eye/arange/linspace, shape, dtype, ndim, size를 학습합니다.
배열 생성 및 속성은(는) CoddyKit의 무료 Learn AI with Python 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Learn AI with Python 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.
ndarray
NumPy의 핵심 객체는 ndarray입니다. 연속된 메모리에 저장되는 고정 크기의 동종 숫자 격자이며, 이러한 메모리 배치 덕분에 NumPy가 빠르게 동작합니다.
import numpy as np
a = np.array([1, 2, 3, 4])
print(a) # [1 2 3 4]중첩 목록에서 만들기
목록의 목록을 전달하면 2차원 배열을 만들 수 있습니다. NumPy는 구조에서 형태를 추론합니다.
m = np.array([[1, 2, 3], [4, 5, 6]])
print(m)
# [[1 2 3]
# [4 5 6]]0과 1로 채운 배열
np.zeros와 np.ones는 지정한 형태의 배열을 미리 할당합니다. 값을 채우기 전에 자리 표시자를 만드는 표준적인 방법입니다.
print(np.zeros((2, 3))) # 2x3 of 0.0
print(np.ones(4)) # [1. 1. 1. 1.]eye로 단위 행렬 만들기
np.eye(n)은 n x n 단위 행렬을 만듭니다. 대각선에는 1이, 나머지 위치에는 0이 들어갑니다. 선형 대수에 필수적입니다.
print(np.eye(3))
# [[1. 0. 0.]
# [0. 1. 0.]
# [0. 0. 1.]]arange로 범위 만들기
np.arange(start, stop, step)은 Python의 range처럼 동작하지만 배열을 반환하며 부동소수점 수를 간격으로 사용할 수 있습니다.
print(np.arange(0, 10, 2)) # [0 2 4 6 8]
print(np.arange(0, 1, 0.25)) # [0. 0.25 0.5 0.75]linspace로 균등한 간격 만들기
np.linspace(start, stop, num)은 양 끝점을 모두 포함하여 균등한 간격의 점을 num개 반환합니다. 그래프의 축을 만들기에 적합합니다.
print(np.linspace(0, 1, 5)) # [0. 0.25 0.5 0.75 1. ]arange와 linspace 비교
간격을 알고 있다면 arange를 사용하고, 점의 개수를 알고 있다면 linspace를 사용하세요. linspace는 부동소수점 간격에서 발생하는 오차 누적을 방지합니다.
# 50 points from 0 to 2*pi for a smooth curve
x = np.linspace(0, 2 * np.pi, 50)형태와 차원 수
.shape은 차원별 크기의 튜플이고, .ndim은 차원 수입니다. 2x3 배열의 형태는 (2,3)이고 ndim은 2입니다.
m = np.array([[1, 2, 3], [4, 5, 6]])
print(m.shape) # (2, 3)
print(m.ndim) # 2크기와 데이터 형식
.size는 전체 요소 개수이고, .dtype은 요소의 데이터 형식입니다. NumPy는 효율적인 숫자 데이터 형식을 자동으로 선택합니다.
print(m.size) # 6
print(m.dtype) # int64요소 크기와 메모리
.itemsize는 요소 하나의 바이트 크기입니다. 배열이 사용하는 메모리 용량을 추정하려면 .size와 곱하세요.
print(m.itemsize) # 8 (bytes per int64)
print(m.size * m.itemsize) # 48 bytes total데이터 형식 선택하기
메모리를 절약하거나 정밀도를 보장하기 위해 데이터 형식을 강제로 지정할 수 있습니다. float32는 float64에 비해 메모리 사용량을 절반으로 줄입니다.
a = np.array([1, 2, 3], dtype=np.float32)
print(a.dtype) # float32
print(a.itemsize) # 4빠른 확인
배열 생성에 대해 배운 내용을 테스트해 보세요.
복습
배열 생성 도구 모음입니다.
- 목록에서 만드는
np.array, 자리 표시자를 만드는np.zeros와np.ones, 단위 행렬을 만드는np.eye - 간격 기준의
np.arange와 개수 기준의np.linspace - 속성:
shape,ndim,size,dtype,itemsize
자주 묻는 질문
“배열 생성 및 속성” 강의는 무료인가요?
네 — “배열 생성 및 속성” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Learn AI with Python 강의 전체를 잠금 해제할 수 있습니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.
“배열 생성 및 속성”에서 뭘 배우나요?
np.array(), np.zeros/ones/eye/arange/linspace, shape, dtype, ndim, size를 학습합니다. 브라우저에서 직접 실행하는 실습 코드로 Learn AI with Python을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Learn AI with Python을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Learn AI with Python은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“배열 생성 및 속성” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Learn AI with Python 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Learn AI with Python 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.