NumPy 배열 만들기
NumPy 배열 만들기
NumPy에서는 다양한 함수로 원하는 형태의 배열을 만들 수 있어요. 0부터 채우기, 1로 채우기, 범위 생성, 0과 1 사이 난수, 항등 행렬 등 작업마다 맞는 생성 함수가 있어요.
기본 생성 함수
zeros, ones, full은 값을 채워서 배열을 만들어요.
import numpy as np
z = np.zeros((3, 3)) # 0으로 채운 3x3
o = np.ones(4) # 1로 채운 1차원
f = np.full((2, 2), 7) # 7로 채운 2x2
arange는 범위 기반의 배열을, linspace는 구간을 균등하게 나눈 배열을 만들어요.
a = np.arange(0, 10, 2) # [0, 2, 4, 6, 8]
l = np.linspace(0, 1, 5) # 0과 1 사이를 5개로 균등 분할
난수와 항등 행렬
random 모듈로 난수 배열을 만들고, eye로 항등 행렬을 만들어요.
r = np.random.rand(3, 3) # [0,1) 균등 난수 3x3
n = np.random.randn(3) # 표준정규 난수 3개
e = np.eye(3) # 3x3 단위행렬
random.seed()로 시드를 고정하면 결과를 재현할 수 있어요.
reshape과 타입 변환
만든 배열은 reshape로 모양을 바꾸고, astype으로 타입을 변환할 수 있어요.
x = np.arange(6).reshape(2, 3) # 1x6 -> 2x3
y = x.astype(np.float64) # 정수 -> 실수