5.5 반복값을 갖는 벡터 만들기 : rep()
함수
데이터가 일정한 간격으로 증가/감소하거나(seq()
함수 이용), 같은 값이 반복되는 경우의 벡터를 생성할 수 있게 해주는 편리한 함수들이 있습니다.
먼저 반복적인 값을 가지는 벡터를 생성하는 rep()
함수에 대하여 살펴보겠습니다. 여기서 rep
는 replicate
(‘복제하다’ 라는 뜻)을 의미합니다.
이 rep()
함수의 형식은 다음과 같습니다.
형식 :
rep(벡터, times|each = )
times
;벡터
의 복제 횟수 지정each
:벡터
요소 각각의 복제 횟수 지정
<- c(1, 2, 3)
x
# 벡터 전체의 반복 횟수의 지정 : `times =
<- rep(x, times=2); x1 # 벡터 x를 2번 복제합니다. x1
## [1] 1 2 3 1 2 3
<- rep(1:4, 2) ; x2 # times = 를 생략해도 됩니다. x2
## [1] 1 2 3 4 1 2 3 4
# 요소별로 복제 횟수의 지정 : each =
<- rep(x, each=2); x3 # 벡터 x의 각 요소별로 각각 2번씩 복제합니다. x3
## [1] 1 1 2 2 3 3
<- rep(1:4, each = 2) ; x4 # 'each ='는 생략할 수 없습니다. x4
## [1] 1 1 2 2 3 3 4 4
# 요소별 상이한 복제 횟수의 지정
<- c(3, 5, 2, 4, 6, 8)
x5 <- rep(x5, c(2, 3, 1, 1, 3, 4)) ; x6 x6
## [1] 3 3 5 5 5 2 4 6 6 6 8 8 8 8
<- rep(x5, rep(c(2, 1), 3)) ; x7 x7
## [1] 3 3 5 2 2 4 6 6 8
위의 예에서는 rep()
함수의 첫번째 인수를 모두 숫자형 벡터로 하였으나, 문자형 벡터, 논리형 벡터 등을 적용할 수도 있습니다.