import numpy as np
#조건(해당요소가 3보다 크다)을 만족하는 Index찾기
arr = np.array([1,2,3,4,5])
print(arr)
print(type(arr))
result = np.where(arr>3)
print(result)
print(type(result))
print(result[0])#3번과 4번 인덱스가 위 조건을 만족한다.
#양수,음수를 1과 0으로 변경(양수면 1로, 음수면 0으로 변경)
arr = np.array([-1,2,-3,4,-5])
result = np.where(arr>0, 1 , 0) #arr에 있는 값이 0보다 크면, 두번쨰 파라미터(1)을 반환하고, 0보다 작거나 같으면 세번째 파라미터(0)를 반환합니다.
print(result)
#조건에 따라 값 변경
arr = np.array([1,2,3,4,5])
result = np.where(arr>3, arr, 0) #arr에 있는 값이 3보다 크면, 있는 그대로 반환하고(통과하고), 3보다 작거나 같으면 0을 반환합니다.
print(result)
#조건에 따라 다른 배열 선택
a = np.array([1,2,3,4,5])
b = np.array([10,20,30,40,50])
condition = np.array([True, False, True, False, True])
result = np.where(condition, a ,b)
print(result)
참고 및 출처:
https://codechacha.com/ko/python-numpy-where/
Numpy - where() 사용 방법
Python numpy의 where 함수는 배열의 요소가 어떤 조건에 따라 값을 선택하는데 사용됩니다. where()는 아래와 같이 사용하며, 배열의 요소가 condition에 대해서 true면 x가 리턴되고, false면 y가 리턴됩니
codechacha.com
'자료구조 > numpy 자료구조' 카테고리의 다른 글
'넘파이'로 연립방정식과 고차방정식을 해결해보자! (0) | 2023.11.26 |
---|---|
numpy flatten() 함수, 1차원 배열로 변환(평탄화) (1) | 2023.03.25 |
numpy hstack, vstack 함수 (배열 연결) (2) | 2023.03.25 |
np.linspace와 np.arange의 차이에 대해 알아보자! (1) | 2023.03.25 |
댓글