시퀀스 생성 (seq, :)
Coddy R 여정의 기초 섹션에 포함된 레슨 — 78개 중 43번째.
여러분은 루프에서 시퀀스를 생성하기 위해 1:5를 사용해 왔습니다. 이 콜론 연산자는 빠르고 간단하지만, R은 시퀀스를 더 세밀하게 제어할 수 있는 seq() 함수도 제공합니다.
콜론 연산자는 연속된 정수 시퀀스를 생성합니다:
print(1:5)
print(10:6)출력:
[1] 1 2 3 4 5
[1] 10 9 8 7 6시퀀스가 양방향으로 진행될 수 있다는 점에 유의하세요. 첫 번째 숫자가 더 크면 숫자를 거꾸로 셉니다.
seq() 함수는 더 많은 유연성을 제공합니다. by 인수를 사용하여 단계 크기를 지정할 수 있습니다:
print(seq(2, 10, by = 2))출력:
[1] 2 4 6 8 10이것은 2부터 10까지의 짝수를 생성합니다.
length.out을 사용하여 원하는 숫자의 개수를 지정할 수도 있습니다:
print(seq(1, 10, length.out = 4))출력:
[1] 1 4 7 10R은 정확히 4개의 균등한 간격의 숫자를 제공하기 위해 자동으로 간격을 계산합니다. 두 가지 접근 방식 모두 루프에서 원활하게 작동하여 사용자 정의 시퀀스를 쉽게 반복할 수 있게 해줍니다.
챌린지
쉬움입력으로부터 세 개의 숫자 start, end, step을 읽으세요.
seq() 함수를 사용하여 start부터 end까지 주어진 step 크기만큼의 시퀀스를 생성하세요. 그런 다음 for 루프를 사용하여 이 시퀀스를 반복하고 각 숫자의 제곱을 출력하세요.
각 제곱된 값은 print()를 사용하여 각각 별도의 줄에 출력되어야 합니다.
예를 들어, 입력값이 2, 10, 2인 경우 출력은 다음과 같아야 합니다:
[1] 4
[1] 16
[1] 36
[1] 64
[1] 100이는 2, 4, 6, 8, 10 시퀀스가 생성되고 각 숫자가 제곱되었기 때문입니다.
치트 시트
콜론 연산자 :는 연속된 정수 시퀀스를 생성합니다:
1:5 # 1 2 3 4 5를 생성합니다
10:6 # 10 9 8 7 6을 생성합니다 (카운트다운)seq() 함수는 시퀀스에 대해 더 많은 제어 기능을 제공합니다:
# 'by'를 사용하여 단계 크기 지정
seq(2, 10, by = 2) # 2 4 6 8 10을 생성합니다
# 'length.out'을 사용하여 값의 개수 지정
seq(1, 10, length.out = 4) # 1 4 7 10을 생성합니다콜론 연산자와 seq() 모두 for 루프에서 작동합니다:
for (i in seq(2, 10, by = 2)) {
print(i)
}직접 해보기
# 입력 읽기
con <- file("stdin", "r")
start <- as.numeric(suppressWarnings(readLines(con, n = 1)))
end <- as.numeric(suppressWarnings(readLines(con, n = 1)))
step <- as.numeric(suppressWarnings(readLines(con, n = 1)))
# TODO: 아래에 코드를 작성하세요
# 1. seq()를 사용하여 지정된 step으로 start부터 end까지의 시퀀스를 생성합니다.
# 2. for 루프를 사용하여 시퀀스를 반복합니다.
# 3. print()를 사용하여 각 숫자의 제곱을 출력합니다.이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.