Page 16 -
P. 16

앞 코드는 c(1 > 2, 2 > 1)라는 의미다. 길이가 서로 다른 벡터를 비교할 경우를 알아보자.

                 > c(2, 3) > c(1, 2, -1, 3)
                 [1] TRUE TRUE TRUE FALSE

               살짝 복잡하게 보일 수 있다. 이는 길이가 짧은 벡터를 반복해서 적용한다고 생각하면 된다. 결과
               적으로 c(2 > 1, 3 > 2, 2 > -1, 3 > 3)를 의미한다. 자세히 보면, 길이가 긴 벡터에 있는 모든 요소

               에서 비교가 끝날 때까지는 짧은 벡터 안의 요소들을 계속해서 재활용하는 것을 알 수 있다.
               R에는 다음과 같은 이진 논리 연산자가 있다. ==는 동일함, >는 큼, >=는 크거나 같음, <는 작음,

               <=는 작거나 같음을 의미한다. 이외에도 R에는 %in% 같은 논리 연산자가 있다. 이는 왼쪽 벡터에
               있는 원소가 오른쪽 벡터 안에 있는지 판단한다.

                 > 1 %in% c(1, 2, 3)
                 [1] TRUE
                 > c(1, 4) %in% c(1, 2, 3)
                 [1] TRUE FALSE

               보다시피 수치를 비교하는 데 사용하는 연산자와 달리 %in% 연산자는 길이가 다른 벡터 간에도 원

               소를 재활용하지 않는다. 앞 예제에서는 대신에 왼쪽 벡터의 원소들을 차례로 반복 적용하여 실제
               로는 c(1 %in% c(1, 2, 3), 4 %in% c(1, 2, 3))처럼 동작한다.




               2.1.3 문자형 벡터


               문자형 벡터는 말 그대로 문자열로 된 집합이다. 여기서 문자열은 개별적인 문자 또는 기호가 아

               니라 this is a string 같은 문자의 집합을 의미한다. 문자형 벡터를 만드는 데 큰따옴표와 작은따
               옴표를 모두 사용할 수 있다.

                 > "hello, world!"
                 [1] "hello, world!"
                 > 'hello, world!'
                 [1] "hello, world!"

               c() 함수로 다중 요소 문자형 벡터를 만들 수 있다.


                 > c("Hello", "World")
                 [1] "Hello" "World"



         50





     r교과서_07.indd   50                                                                       2020-04-09   오후 4:21:24
   11   12   13   14   15   16   17   18   19   20   21