안녕하세요 jay입니다.
지난 시간에는 numpy의 기본을 다루었습니다.
이번 시간은 numpy의 boolean indexing에 대해 알아보겠습니다
Boolean indexing으로 array slicing
array를 하나 생성한 뒤,
boolean type을 이용하여 array를 slicing해보겠습니다.
import numpy as np # 0~11 값을 얻고 이를 3x4 모양의 배열로 재구성한다 data = np.arange(12).reshape(3,4) print(data) #[[ 0 1 2 3] # [ 4 5 6 7] # [ 8 9 10 11]] name = np.array(['kim', 'lee', 'park', 'kim']) # array 생성 print(name == 'kim') # [True False False True] # 배열 data에서 첫번째, 네번째 열만 얻는 방법 print(data[:, name == 'kim']) #[[ 0 3] # [ 4 7] # [ 8 11]] # 배열 data에서 'kim'(0번째, 3번째) 또는 'lee'(1번째)의 위치의 행만 얻는 방법 print(data[:, (name == 'kim') | (name == 'lee')]) # (전체 행 선택, 0번째 3번째 혹은 1번째 열 선택) # [[ 0 1 3] # [ 4 5 7] # [ 8 9 11]]
댓글
댓글 쓰기