[numpy] Indexing 및 Slicing

Indexing 및 Slicing

데이터를 불러올 때 전체를 가져오는게 아니라 일부만 가져올 때 indexing 또는 slicing 이 사용된다.

ndarray 는 어떻게 indexingslicing 을 하는지 설명한다.

기본 Indexing 및 Slicing

pythonlist 또는 tuple 과 비슷하지만 약간의 차이가 존재한다.

1. Indexing

2. Slicing

Boolean indexing

True, False로 구성된 boolean mask를 이용하여 True에 해당하는 index만을 조회하는 방식이다.

import numpy as np

np.random.seed(1)
arr = np.random.randint(0,10,(7,))
print(arr)                   # [5 8 9 5 0 0 1]
print(arr % 2 == 0)          # [False  True False False False]
print(arr[arr % 2==0])       # [8 0 0]

Fancy indexing

ndarrayindex 배열을 전달하여 배열요소를 참조하는 방식이다.