안녕하세요, Davey 입니다. 오늘은 Boolean indexing 리스트, 조건 값에 맞춰서 리스트 화 하는 것에 대해서 설명 드리겠습니다. 일단 numpy 함수로서 딥러닝이나 수계산할 때 유용하게 활용이 가능합니다.
Boolean indexing 리스트 화
- 이번 내용을 설명 드리기 전에 이전에 numpy 함수 다뤘던 포스팅 보고 오셔서 선행 학습 하고 오시면 이 포스팅에서 설명 드린 내용 이해하는데 도움이 되실 거 같습니다. 이전 포스팅 링크는 아래에 첨부해 드리겠습니다.
- 브로드 캐스팅을 활용하여, ndarray 로 부터 bool list를 읽어 옮으로써, True, False 형식으로 list화 하여 표현함.
- 쉬운 이해를 돕기 위해서 아래와 같이 간단하게 Code를 구현해서 보여드리도록 하겠습니다.
============================================
import numpy as np
test01 = np.random.randint(1,200, size = 100)
print(test01)
============================================
- 위 예제 Source에서 조건 값을 부여하여, 그 조건 값을 만족하는 것은, True 라고 출력하고, 만족하지 않은 것은, False로 출력하는 리스트를 만들어 보겠습니다.
-> 조건 값 : 20 보다 큰 값은 True, 20보다 작은 값은 False로 출력
============================================
import numpy as np
test01 = np.random.randint(1,200, size = 100)
print(test01)
print()
test01 >20
============================================
- 위 코드를 실행시켜 보시면 아래와 같이, 20 보다 큰 값은 True, 20보다 작은 값은 False로 출력되는 걸 확인 하실 수 있습니다.
조건 값에 맞춰서 리스트 화
추가내용 2 -
: 위에서 말한 것은, 조건 값을 기준으로, 만족하면, True 이고, 만족하지 못하면, False로 나오는 리스트를 출력했다면, 실제적으로 조건에 맞는 값만 리스트 화 하는 방법은 아래와 같이, 예제를 통해서 설명 드리겠습니다.
(한 가지 이상의 조건을 줄 때, 즉 AND, OR를 사용하고자 할 때 : & = And, | = OR)
==============================================================
import numpy as np
test01 = np.random.randint(1,200, size = 100)
print(test01)
print()
condition1 = test01 >20
test01[condition1] # condition1 이라는 조건 값에 부합되는 값들의 리스트를 출력
==========================================================
- 위 코드를 실행시켜 보시면 아래와 같이, 20 보다 큰 값으로만 리스트화 하여 출력되는 걸 확인 하실 수 있습니다.
이상입니다. 이전에도 말씀 드렸지만, numpy 자체는 정말 유용한 거 같습니다. 그런데 하나 하나 좀 쓰면서 익혀야지 안 그럼 금방 금방 까먹는 거 같습니다. 좀 더 노력해야 겠습니다. 같이 공부하면서 같이 성장하시죠! 이만 마무리 하겠습니다. 감사합니다.
제 Posting이 조금이나마 정보 전달에 도움이 되셨길 빌며, 되셨다면, 구독, 댓글, 공감 3종 세트 부탁 드립니다. 감사합니다.
[저작권이나, 권리를 침해한 사항이 있으면 언제든지 Comment 부탁 드립니다. 검토 후 수정 및 삭제 조치 하도록 하겠습니다. 그리고, 기재되는 내용은 개인적으로 습득한 내용이므로, 혹 오류가 발생할 수 있을 가능성이 있으므로, 기재된 내용은 참조용으로만 봐주시길 바랍니다. 게시물에, 오류가 있을때도, Comment 달아 주시면, 검증 결과를 통해, 수정하도록 하겠습니다.]
댓글