본문 바로가기
AI/[TEAMLAB]Numpy 사용법

[TEAMLAB] 3 - 8. numpy - comparisons

by 쵸빙 2020. 1. 20.

     이번 시간에는 numpy에서 값들을 비교하는 방법에 대해 알아보도록 하겠다.

 

all & any

     numpy에서 any는 어느 하나라도 조건을 만족하면 true를 반환하고, all은 모두가 조건에 만족할 때 treu를 반환한다.

즉, any는 OR이고, all은 AND와 같다.

 

     예를 보자면 위와 같이 0부터 9까지는 모두 0보다 크므로 false가 나온다. 일종의 broadcast인 셈이다.

a > 5를 보자면 6, 7, 8, 9에 해당하는 값들만 true가 나온다.

 

    배열 간의 크기가 같을 때는 element-wise 계산을 하게 된다.

 

     logical and는 두 조건을 and로 만족하고 있는지 알아본다. logical not은 주어진 것을 not으로 바꿔준다.

logical or은 각 element별 하나라도 true가 있으면 true를 반환한다.

 

np.where

     오늘 가장 중요한 부분은 np.where이다. True, False에 해당하는 argument에 아무 것도 쓰지 않게 되면 

true인 부분의 list만 반환하게 된다. np.NaN은 null값인지 아닌지를 알아본다.

 

argmax, argmin

     argmax와 argmin은 array 안에 있는 최대값과 최소값의 인덱스 값을 반환한다.

axis = 1이라고 하면 row값들 중 가장 큰 값을 반환할 것이다. 매우 많이 쓰이니 꼭 기억해두자.

 

다음 시간에는 numpy의 boolean과 fancy index에 대해서 알아볼 것이다.