본문 바로가기
R Basics

반복문

by Nowkeeh Ahc

for문

  • 반복문(repetitve statement)은 정해진 동작을 반복적으로 수행할 때 사용하는 명령문
  • 동일 명령문을 여러 번 반복해서 실행할 때 사용
  • for문의 문법
for (반복 변수 in 반복 범위) {
 반복할 명령문(들)

 

기본 for문

for(i in 1:5) {
 print('*')
}

 

반복 범위에 따른 반복 변수의 값 변화

for(i in 6:10) {
 print(i)
}

 

반복 변수를 이용한 구구단 출력

for(i in 1:9) {
 cat('2 *', i,'=', 2*i,"\n")
}

 

for문 안에서 if문의 사용

for(i in 1:20) {
 if(i%%2==0) { 		# 짝수인지 확인
 print(i)
 }
}

 

1~100 사이의 숫자의 합 출력

sum <- 0
for(i in 1:100) {
 sum <- sum + i 		# sum에 i 값을 누적
}
print(sum)

 

iris에서 꽃잎의 길이에 따른 분류 작업

norow <- nrow(iris) 		# iris의 행의 수
mylabel <- c( ) 			# 비어있는 벡터 선언
for(i in 1:norow) {
 	if (iris$Petal.Length[i] <= 1.6) { # 꽃잎의 길이에 따라 레이블 결정
 		mylabel[i] <- "L"
} else if (iris$Petal.Length[i] >= 5.1) {
  mylabel[i] <- "H"
 	} else {
 		mylabel[i] <- "M"
}
}
print(mylabel)				# 레이블 출력
newds <- data.frame(iris$Petal.Length, mylabel) # 꽃잎의 길이와 레이블 결합
head(newds) 			# 새로운 데이터셋 내용 출력

 

while 문

어떤 조건이 만족하는 동안 코드블록을 수행하고, 해당 조건이 거짓일 경우 반복을 종료하는 명령문

while (비교조건) {
 반복할 명령문(들)
sum <- 0
i <- 1
while(i <=100) {
 	sum <- sum + i 	# sum에 i 값을 누적
 	i <- i + 1 	# i 값을 1 증가시킴
}
print(sum)

 

break와 next

 

break

sum <- 0
for(i in 1:10) {
 sum <- sum + i
 if (i>=5) break
}
print(sum)

 

next

sum <- 0
for(i in 1:10) {
 if (i%%2==0) next
 sum <- sum + i
}
print(sum)

 


This post was written based on what I read and studied the book below.

http://www.yes24.com/Product/Goods/92851804

댓글