Menu
Coddy logo textTech

배열 인덱싱

Coddy의 NumPy 기초 코스 레슨 — 18개 중 12번째.

Numpy의 또 다른 훌륭한 기능은 배열에서 특정 인덱스를 선택하는 능력입니다. [] 대괄호 안에 List를 넣고 선택하려는 인덱스를 지정하세요: ary[indices] 

예제 1

0번째, 2번째, 4번째 요소를 가져옵니다:

x = np.arange(5, 15) # np.array([5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
x[[0, 2, 4]]
>>> [5, 7, 9]

예제 2

첫 번째와 마지막 요소를 가져옵니다 (이번에는 2D 배열에서)

x = np.array([[0, 1], [2, 3], [4, 5], [6, 7]])
x[[0, -1]]
>>> [[0, 1], [6, 7]]

2D 배열에서 특정 요소를 가져오는 것은 어떨까요?

우리는 ary[[Row indices], [Element indices]]를 사용합니다.

예제 3

2번째3번째 행에서 첫 번째와 마지막 요소를 가져옵니다

x = np.array([
	[ 0,  1,  2,  3,  4,  5],
	[ 6,  7,  8,  9, 10, 11],
	[12, 13, 14, 15, 16, 17],
	[18, 19, 20, 21, 22, 23],
])
x[[1, 1, 2, 2], [0, -1, 0, -1]]
>>> [6, 11, 12, 17]

무슨 일이 일어났나요?

Numpy는 대괄호 [] 내부의 각 리스트에서 대응하는 인덱스를 확인하고 요소를 반환합니다:

x[[1, 1, 2, 2], [0, -1, 0, -1]]

  • x[1, 0]  # --> 6
  • x[1, -1] # --> 11
  • x[2, 0]  # --> 12
  • x[2, -1] # --> 17

모든 행에서 첫 번째와 마지막 인덱스를 가져오려면 어떻게 해야 할까요?

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

challenge icon

챌린지

쉬움

2차원 배열 ary가 주어졌을 때, 이번 레슨에서 배운 방법들을 사용하여 5로 나누어떨어지는 모든 숫자(0, 5, 10, ...)를 추출하세요.

직접 해보기

import numpy as np
'''
ary looks like:
array([[ 0,  1,  2,  3,  4],
       [ 5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14],
       [15, 16, 17, 18, 19]])
'''
ary = np.arange(0, 20).reshape(4, 5)  # don't change ary
res = ary[]  # <-- Complete indices
print(str(res).replace("\n", ""))  # don't change this line

NumPy 기초의 모든 레슨