[python-ds-handbook] NumPy
Numpy 중 자주 쓰는 것 모음
NumPy 모듈 불러오기
import numpy as np
random으로 배열 만들기
# 재현 가능성을 위한 시드 값
np.random.seed(0)
# 3*3 배열, 0과 1 사이의 난수로 채움
np.random.random((3,3))
# 정규 분포(평균=0, 표준편차=1)의 난수로 채운 3*3 배열
np.random.normal(0,1,(3,3))
#[0,10] 구간의 임의의 정수로 채운 3*3 배열
np.random.randint(0,10,(3,3))
# 3*3 단위 행렬 만들기
np.eye(3, dtype=int)
numpy 속성
x3=np.random.randint(10, size=(3,4,5)) # 3차원
print('x3 ndim:', x3.ndim) # 차원의 개수 3
print('x3 shape:', x3.shape) # 각 차원의 크기 (3,4,5)
print('x3 size:', x3.size) # 전체 배열의 크기 60
print('x3 dtype:', x3.dtype) # 타입 int64
배열 슬라이싱
x=np.arange(10) # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# 하나 걸러 하나씩의 요소로 구성된 배열
x[::2] # array([0, 2, 4, 6, 8])
# 인덱스 1부터 시작해 하나 걸러 하나씩 요소로 구성된 배열
x[1::2] # array([1, 3, 5, 7, 9])
## 모든 요소를 거꾸로 나열
x[::-1] # array([9, 8, 7, 6, 5, 4, 3, 2, 1, 0])
# 인덱스 5부터 하나 걸러 하나씩 요소를 거꾸로 나열
x[5::-2] # array([9, 8, 7, 6, 5, 4, 3, 2, 1, 0])
# x2
# 값 수정
x2[0,0]=12
# array([[12, 5, 2, 4],
# [ 7, 6, 8, 8],
# [ 1, 6, 7, 7]])
# 두 개의 행, 세 개의 열
x2[:2,:3] # array([[12, 5, 2],
# [ 7, 6, 8]])
# 모든 행, 한 열 걸러 하나씩
x2[:3, ::2] # array([[12, 2],
# [ 7, 8],
# [ 1, 7]])
# 역으로 변환
x2[::-1, ::-1] # array([[ 7, 7, 6, 1],
# [ 8, 8, 6, 7],
# [ 4, 2, 5, 12]])
# 첫번째 열
x2[:,0] # array([12, 7, 1])
# 첫번째 행
x2[0,:] # array([12, 5, 2, 4])
print(x2[0]) # 같은 결과
배열 연결
np.concatenate, np.vstack, np.hstack
'Python' 카테고리의 다른 글
reshape (0) | 2020.08.08 |
---|---|
아나콘다 가상환경 만들기 (0) | 2020.07.13 |
댓글