관계 연산자를 사용한 배열 비교
관계 연산자는 "보다 작음", "보다 큼" 및 "같지 않음"과 같은 연산자를 사용하여 피연산자를 정량적으로 비교합니다. 관계 비교의 결과는 관계가 true인 위치를 나타내는 논리형 배열로 나타납니다.
다음은 MATLAB®에서 제공되는 관계 연산자입니다.
기호 | 상응하는 함수 | 설명 |
---|---|---|
< | lt | 보다 작음 |
<= | le | 보다 작거나 같음 |
> | gt | 보다 큼 |
>= | ge | 보다 크거나 같음 |
== | eq | 같음 |
~= | ne | 같지 않음 |
배열 비교
숫자형 배열
관계 연산자는 두 배열 간에 요소별 비교 연산을 수행합니다. 연산이 가능하려면 배열의 크기가 서로 호환되어야 합니다. 호환되는 크기의 배열은 계산을 수행하는 동안 동일한 크기가 되도록 묵시적으로 확장됩니다. 가장 간단한 경우는 두 개의 피연산자가 동일한 크기의 배열이거나 한쪽이 스칼라일 때입니다. 자세한 내용은 기본 연산에 대해 호환되는 배열 크기 항목을 참조하십시오.
예를 들어, 크기가 같은 두 행렬을 비교하는 경우 반환되는 결과는 관계가 true인 위치를 나타내는 요소가 포함된 동일한 크기의 논리형 행렬입니다.
A = [2 4 6; 8 10 12]
A = 2 4 6 8 10 12
B = [5 5 5; 9 9 9]
B = 5 5 5 9 9 9
A < B
ans = 1 1 0 1 0 0
이와 유사하게, 두 배열 중 하나를 스칼라와 비교할 수 있습니다.
A > 7
ans = 0 0 0 1 1 1
1
×N
행 벡터와 M
×1
열 벡터를 비교하는 경우 MATLAB은 비교를 수행하기 전에 각 벡터를 M
×N
행렬로 확장합니다. 결과로 반환되는 행렬에는 벡터 내 요소의 각 조합에 대한 비교 결과가 포함되어 있습니다.
A = 1:3
A = 1 2 3
B = [2; 3]
B = 2 3
A >= B
ans = 0 1 1 0 0 1
빈 배열
두 배열의 크기가 서로 호환되는 한, 관계 연산자는 크기가 0인 차원이 있는 배열에서도 작동합니다. 즉, 한 배열의 어느 차원 크기가 0이면 다른 배열의 대응하는 차원의 크기는 1 또는 0이어야 하며, 출력값에서 해당 차원의 크기는 0입니다.
A = ones(3,0); B = ones(3,1); A == B
ans = Empty matrix: 3-by-0
그러나, 다음과 같은 표현식은
A == []
A
가 0×0 또는 1×1이 아닌 경우 오류를 반환합니다. 이 동작은 +
, -
, >
, <
, &
, |
등의 다른 모든 이항 연산자에서도 동일합니다.
빈 배열인지 테스트하려면 isempty(A)
를 사용하십시오.
복소수
연산자
>
,<
,>=
,<=
는 피연산자의 실수부만 사용하여 비교 연산을 수행합니다.연산자
==
와~=
는 피연산자의 실수부와 허수부를 모두 테스트합니다.
Inf
, NaN
, NaT
및 정의되지 않은 요소 비교
Inf
값은 다른Inf
값과 같습니다.NaN
값은 다른NaN
값을 비롯한 기타 모든 숫자형 값과 같지 않습니다.NaT
값은 다른NaT
값을 비롯한 기타 모든 datetime형 값과 같지 않습니다.정의되지 않은 categorical형 요소는 다른 정의되지 않은 요소를 비롯한 기타 모든 categorical형 값과 같지 않습니다.
논리문
논리 연산자 A & B
(AND), A | B
(OR), xor(A,B)
(XOR), ~A
(NOT)를 관계 연산자와 함께 사용하여 더 복잡한 논리문을 만들어 낼 수 있습니다.
예를 들어, 두 개의 배열 모두에서 음수 요소가 검색되는 위치를 찾을 수 있습니다.
A = [2 -1; -3 10]
A = 2 -1 -3 10
B = [0 -2; -3 -1]
B = 0 -2 -3 -1
A<0 & B<0
ans = 0 1 1 0
다른 예제는 조건을 충족하는 배열 요소 찾기 항목을 참조하십시오.