데이터 분석/R 데이터 처리 & 분석

[R] seq 함수 (숫자 연속으로 나열하기)

love R 2022. 9. 30. 23:10
반응형

seq 함수(숫자 연속으로 나열하기)

 

1. seq 함수

seq 함수는 숫자를 연속적으로 생성하기 위한 것입니다.

시작번호와 끝번호를 지정하면 순차적으로 수가 나열되며 by 인자를 통해 간격 조정도 가능합니다. 아래는 seq 함수 사용을 위한 각 인자에 대한 설명입니다.

 

 

seq( from = # 시작 번호
        to = # 끝 번호
        by =  # 간격
        length. out = # 결과값(벡터)의 길이

 

2. seq 함수 예시

from에 1을 지정하고 to에 5를 지정하면 1부터 5까지의 순열이 생성됩니다. 이 때 by를 생략하면 기본값으로 1이 인식됩니다. 만약 숫자 간격을 1 이 외의 수로 지정하고 싶다면 by 인자에 수를 따로 지정해야 합니다.

 

length.out 인자는 결과값(벡터)의 길이를 지정합니다. 예를 들어 length.out = 7을 지정하면 7등분으로 균등하게 나뉜 범위로 순열이 생성됩니다.  

 

 

# 1~5까지 1씩 증가
seq( from = 1, to = 5, by = 1)
[1] 1 2 3 4 5 


# 1~5까지 0.4씩 증가
seq( from = 1, to = 5, by=0.4)
[1] 1.0 1.4 1.8 2.2 2.6 3.0 3.4 3.8 4.2 4.6 5.0


# 1~5까지의 결과값의 길이를 7로 맞춤(1~5를 7등분한 결과)
test <- seq( from = 1, to = 5, length.out = 7)
test
[1] 1.000000 1.666667 2.333333 3.000000 3.666667 4.333333 5.000000



length(test)
[1] 7


# -2~3까지 0.4씩 증가(음수에도 적용됨)
seq(from= -2, to=3, by=0.4)
 [1] -2.0 -1.6 -1.2 -0.8 -0.4  0.0  0.4  0.8  1.2  1.6  2.0  2.4  2.8

 

3. seq.Date 함수 (날짜형 다루기)

seq.Date 함수는 날짜에 대한 순열을 생성합니다.

from에 시작 날짜, to에 끝 날짜를 정하고 by 인자에는 날짜 순열을 생성할 간격을 지정합니다.

 

***주의: from과 to 인자에는 날짜형 타입(Date type)을 입력해야 합니다***

 

seq.Date( from   # 시작 날짜
                 to  # 끝 날짜
                 by   # 날짜 간격 ("day", "week","month","quarter","year")
                 length.out # 결과값(벡터)의 길이

 

 

4. seq.Date 함수 예시

1) Date type의 자료를 생성
start_date  <-  as.Date("2022-09-01")
end_date  <-  as.Date("2022-10-03")

2) seq.Date 함수 적용

# 9월 1일부터 10월 3일까지 일자 별로 결과가 나옵니다.

seq.Date( from  = start_date 
                 to  = end_date
                 by  =  "day")

 [1] "2022-09-01" "2022-09-02" "2022-09-03" "2022-09-04" "2022-09-05"
 [6] "2022-09-06" "2022-09-07" "2022-09-08" "2022-09-09" "2022-09-10"
[11] "2022-09-11" "2022-09-12" "2022-09-13" "2022-09-14" "2022-09-15"
[16] "2022-09-16" "2022-09-17" "2022-09-18" "2022-09-19" "2022-09-20"
[21] "2022-09-21" "2022-09-22" "2022-09-23" "2022-09-24" "2022-09-25"
[26] "2022-09-26" "2022-09-27" "2022-09-28" "2022-09-29" "2022-09-30"
[31] "2022-10-01" "2022-10-02" "2022-10-03"


# 월별로 결과가 나옵니다.
seq.Date( from  = start_date 
                 to  = end_date
                 by  =  "month")

[1] "2022-09-01" "2022-10-01"

 

반응형