더북(TheBook)

일부 논리 함수는 이러한 모호함을 좀 더 분명히 하는 데 유용하다. 예를 들어 any() 함수는 주어진 벡터 안에 TRUE가 하나라도 있으면 TRUE를 반환한다.

> any(c(TRUE, FALSE, FALSE))
[1] TRUE
> any(c(FALSE, FALSE))
[1] FALSE

따라서 벡터 안의 값 중에서 하나라도 2보다 클 때 메시지를 출력하고 싶다면 조건에서 any() 함수를 호출해야 한다.

> if (any(num > 2)) {
+     cat("num > 2!")
+ }
num > 2!

모든 값이 2보다 클 때만 num > 2! 메시지를 출력하려면 any() 대신 all() 함수를 사용해야 한다.

> if (all(num > 2)) {
+     cat("num > 2!")
+ } else {
+     cat("Not all values are greater than 2!")
+ }
Not all values are greater than 2!
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.