상세 컨텐츠

본문 제목

08. Indexing / Slicing

데이터 분석/넘파이

by 알파고제로 2023. 11. 8. 08:48

본문

■ Indexing이란

  • ndarray로부터 특정 요소를 가져오는 방법
  • List와 달리 이차원 배열에서 [0,0] 과 같은 표기 사용
  • Matrix 일 경우 앞은 row 뒤는 column을 의미함

 

 Boolean Indexing

  • 조건문을 이용해 True, False 로 Indexing을 하는 것으로써 배열 각 요소의 선택 여부를 True, False 지정하는 방식
  • 특정 조건에 따른 값을 배열 형태로 추출할 수 있음
  • 해당 인덱스의 True만을 조회
  • 비교 operation 함수들도 모두 사용가능

 

 Fancy Indexing

  • 배열에 인덱스 배열을 전달하여 요소를 참조, index value를 사용하여 추출
  • 음수 사용가능
  • Fancy indexing은 복사본이 생성된다.

 

 Slicing이란

  • Matrix의 부분 집합을 추출하는 것
  • List와 달리 행과 열 부분을 나눠서 Slicing이 가능
  • Slicing은 axis 별로 범위를 지정하여 실행
  • 범위는 [start:stop, start:stop] 형태로 지정
    • star 는 시작 인덱스이며, stop는 종료 인덱스
    • 요소 범위를 지정할 때 stop는 결과에 포함되지 않는다
    • start 생략 : 생략할 경우 0을 지정한 것으로 간주
    • stop 생략 : 이 경우 마지막 인덱스로 설정 ⇒ “::” 형태로 지정된 범위는 전체 범위를 의미
    • start 와 stop에 음수 지정 가능 ⇒  -1은 마지막 인덱스를 의미
  • Slicing은 원본 배열의 View. 따라서 슬라이싱 결과의 요소를 수정하면 원본에 반영.
  • 정수 indexing과 slicing을 혼합해서 사용하면 낮은 차원의 배열이 생성되지만, slicing만 사용하면 원본 배열과 동일한 차원의 배열이 생성

'데이터 분석 > 넘파이' 카테고리의 다른 글

09. Broadcasting  (0) 2023.11.08
07. 배열의 연산-2  (0) 2023.11.08
06. 배열의 연산-1  (0) 2023.11.07

관련글 더보기

댓글 영역