NumPy 논리연산자
15 Jul 2025 | DA개인공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.
논리연산
Numpy에서 논리연산은 배열에 참, 거짓으로 이뤄진 배열을 입력해 True, False값을 받을 수 있도록 한다.
기본적인 논리연산자
>
, <
, >=
, <=
, ==
, !=
집계 함수
데이터를 종합해 특정 연산을 적용하는 함수
- sum(): 합
- min(): 최소값
- max(): 최대값
- mean(): 평균값
- median(): 중앙값
- std(): 표준편차 …
- all(): 모든 원소가 True인지 > 하나라도 False면 False
- any(): 하나라도 True인지 > 하나라도 True면 True
논리 함수
기본적으로 True, False 값으로 구성된 결과가 반환됨
- logical_and() > AND 연산(
&
) - logical_or() > OR 연산(
|
) - logical_not() > NOT 연산(
~
) - logical_xor() > XOR 연산
NumPy에서는 Python의 키워드 and
, or
, not
을 사용할 수 없다.(배열에서 사용 불가능) 따라서 배열에서의 논리연산자는 &
, |
, ~
를 사용해야한다.
logical_and()
a = np.array([True, False, True])
b = np.array([True, True, True])
result = np.logical_and(a, b)
# 출력값 > [True, False, True] : and연산에서는 하나라도 false면 false가 출력된다.
logical_or()
a = np.array([True, False, True])
b = np.array([True, True, True])
result1 = np.logical_or(a, b)
# 출력값 > [True, True, True] : or연산에서는 하나라도 True면 True가 출력된다.
NOT = 논리부정
True면 False / False면 True
a = np.array([True, False, True])
b = np.array([True, True, True])
result2 = np.logical_not(a, b)
# 출력값 > [False, True, False] : True면 False, False면 True가 출력된다.
XOR = 배타적 OR(eXclusive OR)
한쪽만 True면 True / 둘다 True이거나 둘다 False면 False

a = np.array([True, False, True])
b = np.array([True, True, True])
result2 = np.logical_xor(a, b)
# 출력값 > [False, True, False] : 둘다 True면 False, 한쪽만 True면 True가 출력된다.