• Q&A
  • 회원가입
  • 로그인

[basic] R - For Loop (알랭 for반복문)

51  
목차
  1. for 반복문 정의
  2. break 키워드
  3. next 키워드
  4. for 반복문과 if...else... 조건문 결합
  5. 중첩 for 반복문

 

for 반복문 정의

 

반복 횟수가 정해진 경우 주로 사용.

 

※ 데이터 집합의 각 요소에 대해 반복 실행할 때 유용.

※ while 반복문과 달리, for문은 초기값 설정 불필요.

 


[예제1] - 1~5 반복

 

for (x in 1:5) {

  print(x)

}


PS. 

절차함수형 for문보단 객체지향형의 반복 메서드와 유사하게 작동함.

(∴ vector, listMatricesarray 등 각 요소에 대해 반복 실행 가능.


[예제2] - lists 반복

 

langs <- list("HTML", "CSS", "JS")


for (x in langs) {

  print(x)

}

 

결과값:

 

[1] "HTML"

[1] "CSS"

[1] "JS"


[예제3] - vector 반복

 

vectors <- c(1, 2, 3, 4, 5)

for (x in vectors) {

  print(x)

}

 

 

결과값:

[1] 1

[1] 2

[1] 3

[1] 4

[1] 5

 

break 키워드

 

지정 조건일 때 반복문 탈출. (= 반복 중단)

 


[예제]

 

 

langs <- list("HTML", "CSS", "JS")


for (x in langs) {

  if (x == "CSS") {

    break

  }

  print(x)

}

 

결과값:

[1] "HTML"

 

next 키워드

 

지정 조건만 건너뛰고, 다음 조건부터 계속 반복.

 

[주의] 타 언어는 보통 continue 키워드 사용하나, R은 next 키워드 사용.


[예제]

 

langs <- list("HTML", "CSS", "JS")


for (x in langs) {

  if (x == "CSS") {

    next

  }

  print(x)

}

 

결과값:

[1] "HTML"

[1] "JS"

 

for 반복문과 if...else... 조건문 결합

[예제]

 

nums <- 1:5


for (x in nums) {

  if (x == 5) {

    print(paste(x, "끝 O"))

  } else {

    print(paste(x, "끝 X"))

  }

}

 

결과값:

[1] "1 끝 X"

[1] "2 끝 X"

[1] "3 끝 X"

[1] "4 끝 X"

[1] "5 끝 O"

 

중첩 for 반복문

 

반복문이 중첩된 경우에 해당.

 

※ 외부 반복문의 각 요소마다 내부 반복문이 1회씩 실행됨.
※ (예) 구구단: 1단(1~9), 2단(1~9), .....9단(1~9)

 

 


[예제]

 

langs <- list("HTML", "CSS", "JS")

levels <- list("초급", "중급", "고급")

for (x in langs) {

  for (y in levels) {

      print(paste(x, y))

  }

}

 

결과값:

[1] "HTML 초급"

[1] "HTML 중급"

[1] "HTML 고급"

[1] "CSS 초급"

[1] "CSS 중급"

[1] "CSS 고급"

[1] "JS 초급"

[1] "JS 중급"

[1] "JS 고급"



찾아주셔서 감사합니다. Since 2012