카테고리 없음

ndarray 인덱싱

키보드발 2025. 4. 28. 02:20

ndarray의 데이터 선택 방법 정리

인덱싱 종류 설명
특정 위치의 단일값 추출 원하는 위치의 인덱스 값을 지정하면 그 위치의 데이터 하나가 반환된다. 예: arr[2] → 2번 인덱스 값 하나 가져오기
슬라이싱(Slicing) 연속된 범위의 인덱스들을 추출하는 방법. : 기호를 사용해서 시작:끝 지정. 끝은 포함하지 않는다. 예: arr[0:3] → 0, 1, 2 인덱스 값 가져오기
팬시 인덱싱(Fancy Indexing) 여러 개의 원하는 인덱스를 리스트나 배열 형태로 한 번에 지정해 가져오는 방법. 띄엄띄엄 가져올 수 있다. 예: arr[[0, 2, 4]] → 0, 2, 4번째 값 가져오기
불린 인덱싱(Boolean Indexing) 조건을 주고 그 조건을 만족하는 값들만 가져오는 방법. 조건 결과(True/False)를 이용해서 True인 인덱스만 추출한다. 예: arr[arr > 3] → 3보다 큰 값들만 가져오기

팬시 인덱싱(Fancy Indexing) 추가 설명

  • 한 번에 여러 인덱스를 선택할 때 사용.
  • 리스트배열 형태로 인덱스 번호를 넣는다.

예제

import numpy as np

arr = np.array([10, 20, 30, 40, 50])

# 팬시 인덱싱
result = arr[[0, 2, 4]]
print(result)

출력:

[10 30 50]

→ 0번, 2번, 4번 인덱스의 값만 한 번에 가져옴.

슬라이싱 vs 팬시 인덱싱 차이

구분 슬라이싱 팬시 인덱싱
방식 연속된 범위 (: 사용) 여러 개의 인덱스를 리스트/배열로 지정
예시 arr[1:4] → 1,2,3번 가져옴 arr[[1,3,4]] → 1,3,4번만 가져옴
특징 시작~끝-1까지 자유롭게 원하는 인덱스만