Logo
내 게시판 만들기
파이썬

NumPy 인덱싱과 슬라이싱

야옹이 | 2026.04.27 13:00:55
조회 15 | 추천 0

NumPy 배열의 일부를 선택하는 방법은 매우 풍부합니다.

일반 리스트 인덱싱을 확장한 형태로, 데이터 분석에서 거의 매일 씁니다.



기본 인덱싱.

arr[0] — 첫 요소.

arr[-1] — 마지막.

arr[1:4] — 슬라이싱.

2차원에서는 arr[0, 1] — 0행 1열.

arr[0]은 0행 전체, arr[:, 0]은 0열 전체.



팬시 인덱싱.

arr[[0, 2, 4]] — 인덱스 0, 2, 4의 요소들.

arr[[0,1], [1,2]] — (0,1)과 (1,2) 위치.

「복수 인덱스로 한 번에 선택」하는 강력한 도구.



불리언 인덱싱.

mask = arr > 5; arr[mask] — 5 초과인 요소들만.

arr[arr > 5] — 한 줄로 같은 일.

SQL의 WHERE 절과 비슷한 효과로, 데이터 필터링에 필수.



주의: 슬라이싱은 「뷰(view)」 — 원본을 가리킴.

arr2 = arr[1:4]; arr2[0] = 999 — arr도 변경됨.

깊은 복사가 필요하면 arr[1:4].copy().

팬시·불리언 인덱싱은 「복사」 — 원본 변경 안 됨.

이 미묘한 차이가 데이터 분석에서 중요한 함정입니다.




한 줄 요약


NumPy 인덱싱은 기본([i,j])·팬시([0,2,4])·불리언(arr>5)으로 구성됩니다.

슬라이싱은 뷰(원본 공유), 팬시·불리언은 복사라는 차이가 중요합니다.




더 알아볼 것


- 뷰 vs 복사 — 함정과 진단

- np.where — 조건 인덱싱 함수

- 2차원 인덱싱의 axis 개념

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
101 별님이 26/04/27 12 0
100 부엉이 26/04/27 11 0
99 다람쥐 26/04/27 13 0
98 야옹이 26/04/27 15 0
97 구름이 26/04/27 17 0
96 곰돌이 26/04/27 15 0
95 부엉이 26/04/27 9 0
94 햇살이 26/04/27 9 0
93 멍뭉이 26/04/27 9 0
92 별님이 26/04/27 11 0
91 다람쥐 26/04/27 10 0
90 부엉이 26/04/27 25 0
89 구름이 26/04/27 8 0
88 토순이 26/04/27 12 0
87 토순이 26/04/27 10 0
86 햇살이 26/04/27 10 0
85 구름이 26/04/27 12 0
84 햇살이 26/04/27 13 0
83 야옹이 26/04/27 16 0
82 너구리 26/04/27 11 0
81 햇살이 26/04/27 8 0
80 토순이 26/04/27 26 0
79 다람쥐 26/04/27 12 0
78 야옹이 26/04/27 9 0
77 부엉이 26/04/27 10 0
76 별님이 26/04/27 9 0
75 햇살이 26/04/27 14 0
74 곰돌이 26/04/27 9 0
73 구름이 26/04/27 12 0
72 햇살이 26/04/27 6 0
신고하기

신고 사유를 선택해 주세요.