5.2.1 논리 연산자
다른 프로그래밍 언어와 마찬가지로 R에도 기본적인 논리 계산용 연산자가 몇몇 있다. 다음 표는 각 논리 연산자가 어떤 역할을 하는지 보여 준다.
기호 |
설명 |
예제 |
결과 |
& |
벡터화한 AND |
c(T, T) & c(T, F) |
c(TRUE, FALSE) |
| |
벡터화한 OR |
c(T, T) | c(T, F) |
c(TRUE, TRUE) |
&& |
일변량 AND |
c(T, T) && c(F, T) |
FALSE |
|| |
일변량 OR |
c(T, T) || c(F, T) |
TRUE |
! |
벡터화한 NOT |
!c(T, F) |
c(FALSE, TRUE) |
%in% |
벡터화한 IN |
c(1, 2) %in% c(1, 3, 4, 5) |
c(TRUE, FALSE) |
▲ 표 5-1 R의 논리 연산자
if 표현식에서 &&와 ||은 단일 요소 논리형 벡터를 산출하는 데 필요한 논리 연산을 수행할 때 자주 사용한다. 그러나 &&를 사용할 때 발생할 수 있는 잠재적 위험은 다중 요소 벡터로 작업하면 양쪽 벡터의 첫 번째 요소를 제외한 모든 요소를 자동으로 무시한다는 것이다. 다음 코드는 조건문에서 && 또는 &를 사용할 때 어떤 차이점이 있는지 보여 준다.