이외에도 %in% 연산자는 특정 데이터 값을 포함하는지 확인할 때 사용합니다. 다음은 x 변수에 a 값이 포함되어 있는지 확인하는 예시입니다.
> x <- c("a", "b") > "a" %in% x [1] TRUE
x 변수가 a 값을 포함하고 있기 때문에 TRUE가 출력되었습니다. 벡터 구조는 R 연산의 기본임을 잊지 마세요.
TIP
논리 연산 쉽게 이해하기
and와 or에 대한 논리 연산 결과가 헷갈린다면 다음 표를 참고합니다. 논리 연산은 다음 표와 같이 참과 거짓에 대해 연산합니다.
표 6-5 | 논리 연산자 이해
x 값 |
y 값 |
x & y 결과(and) |
x | y 결과(or) |
!x 결과(not) |
TRUE |
TRUE |
TRUE |
TRUE |
FALSE |
TRUE |
FALSE |
FALSE |
TRUE |
FALSE |
FALSE |
TRUE |
FALSE |
TRUE |
TRUE |
FALSE |
FALSE |
FALSE |
FALSE |
TRUE |
논리식이 어렵게 느껴진다면 다음과 같이 생각해 보세요.
“and는 거짓(FALSE)이고 싶은 성향이 있고, or은 참(TRUE)이고 싶은 성향이 있다.”
1. and 조건은 모든 식을 만족해야 합니다. 하나라도 만족하지 않으면 거짓(FALSE)입니다. 가령 x and y라고 하면 ‘x와 y가 반드시 만족해서 참(TRUE)’이라는 의미입니다. or 조건은 하나만 만족해도 좋은 조건입니다. x와 y 중 하나만 만족해도 참(TRUE)입니다. 가령 x or y라고 하면 ‘x 또는 y 중 하나만 만족하면 참(TRUE)’이 되는 조건입니다. ‘and는 엄격하고 or은 관대하다’고 생각해도 좋습니다.
2. 연산자를 우리 말로 바꾸어서 읽어 보면 좀 더 쉽습니다. 예를 들어 ‘TRUE & TRUE = TRUE’라는 식은 ‘참 그리고 참은 참’이고 ‘FALSE | TRUE = TRUE’라는 식은 ‘거짓 또는 참은 참’이라고 말이지요.