안녕하세요 jay입니다.
지난 시간은 numpy의 boolean indexing에 대해 알아보았습니다.
이번 시간은 >, <, = 등과 같은 비교연산자를 이용하여
numpy array 원소값들을 바꿔보겠습니다.
data의 원소값들 을 data > 7 과 같은 비교문을 써서
원소 값들을 7로 바꿨습니다.
np.where을 사용하면 더 간단하게 조건을 넣을 수 있습니다.
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]] # 배열의 모든 항목에 대해 7 보다 큰 값을 모두 7로 교체하는 방법 data[data > 7] = 7 print(data) # [[0 1 2 3] # [4 5 6 7] # [7 7 7 7]] # 조건에 따라 값을 다르게 선택하는 예 # np.where 를 사용한다 # 아래는 5보다 크면 6으로 바꾸고 5보다 작으면 모두 3으로 바꾼다 print(np.where(data>5, 6, 3)) # [[3 3 3 3] # [3 3 6 6] # [6 6 6 6]]
댓글
댓글 쓰기