IT학습/Library

[numpy] 배열의 조건문, numpy 조건문

바틀비 2024. 1. 8. 13:55

핵심: np.where(), np.select()

배열 조건문

더보기
a3 = np.array([0, 1, 2, 3, 4, 5, 6])
a3

"""array([0, 1, 2, 3, 4, 5, 6])
"""

a3 > 3

"""array([False, False, False, False,  True,  True,  True])
"""

a3[a3 > 3] #True 값만 추출

"""array([4, 5, 6])
"""

a3 % 2 == 0 #나머지가 0인 원소

"""array([ True, False,  True, False,  True, False,  True])
"""

a3[a3 % 2 == 0]

"""array([0, 2, 4, 6])
"""
 

numpy의 조건문

  • np.where(조건, x, y) : 단일 조건문. 조건에 참인 경우 x, 조건에 거짓인 경우 y를 반환한다.
  • np.select(조건리스트, 결과리스트, 디폴트값): 다중 조건문. 조건리스트와 결과리스트를 불러오고, 전부 false인 경우 디폴트를 반환한다.
더보기
arr1 = np.arange(10)
arr1

"""array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
"""

np.where(arr1 < 5, arr1, arr1*10) #5보다 작으면 arr1 그대로, 크거나 같으면 10을 곱한다.

"""array([ 0,  1,  2,  3,  4, 50, 60, 70, 80, 90])
"""

arr2 = np.arange(10)
arr2

"""array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
"""

comdList = [arr2 > 5, arr2 == 1]
choiceList = [arr2*10, 0]

np.select(comdList, choiceList, default = arr2)

"""array([ 0,  0,  2,  3,  4,  5, 60, 70, 80, 90])
"""