Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- tensorflow
- 데이비드 라이언
- 파이어족 자산
- eclipse
- 2%룰
- AWS
- 파이어족
- python
- 제시 리버모어
- 자산배분
- 파이어족 저축
- mark minervini
- 데이빗 라이언
- GIT
- 추세추종 2%룰
- H는 통계를 모른다.
- 김프
- 에드워드 소프
- 이클립스
- 파이어족 자산증식
- 퀀트 트레이딩
- 아웃풋 트레이닝
- 파이어족 포트폴리오
- 니콜라스 다바스
- 신의 시간술
- 연금저축계좌
- 마크 미너비니
- 퀀터스 하지 마세요
- 통계적 유의성
- 마크미너비니
Archives
- Today
- Total
머신러닝과 기술적 분석
numpy boolean indexing 할 때 여러 조건을 조합하는 방법 본문
728x90
numpy array 에서 조건문을 vector화 해서 indexing 하는 것을 boolean indexing 이라고 한다.
예를 들면 img
라는 이름의 numpy array 에서 200보다 작은 element는 value를 0으로 바꾸고 싶을 때 다음과 같이 coding 하는게 간단하고 빠르다.
img[img < 200] = 0
물론 if 문을 써도 되지만 위 code 처럼하는 것이 가독성과 효율성에서 좋은 code다.
matlab의 matrix도 이와 같은 방식의 indexing을 지원하고 있고, 처음 matlab 배울 때 무지 헷갈렸지만 나중에는 굉장히 유용하게 썼었고, python numpy로 넘어오면서도 잘 쓰고 있다.
다음과 같이 조건문 여러개를 and/or 로 연결하는 방법도 있다. 이걸 오늘에서야 알았다.
img[(img < 200) & (img > 150)] = 0
img[(img >= 200) | (img <= 150)] = 0
728x90
반응형
'python' 카테고리의 다른 글
python Logging Error 수정방법 (0) | 2021.07.13 |
---|---|
python 2to3 사용방법 (0) | 2017.11.03 |
[python] 작업중인 환경을 공유하는 방법 (0) | 2017.08.26 |
windows 7/10 에서 pytorch 설치 방법 (cpu version) (0) | 2017.08.19 |
Anaconda 로 opencv 를 쉽게 설치하는 방법 (0) | 2017.08.16 |
Comments