천선생의 삶
[R] 반복문 활용하기 - for, while 본문
안녕하세요. 천선생입니다.
이번 포스트에서는 지난 포스트에서 잠깐 말씀드렸던, 반복문에 대해서 알아보도록 하겠습니다.
반복문에는 크게 for 문과 while 문 으로 나뉘는데요, 차이점을 알아보자면
for 문은 입력된 벡터의 길이만큼 반복하는 반면, while 문은 조건에 따라 반복하게 됩니다.
이로 인해 while 문은 반복횟수를 정확히 모를 때 사용하면 편리합니다.
- FOR?
for문은 기본적으로 벡터를 주고, 벡터의 첫번째 값부터 마지막 값까지, 순서대로 실행하는 구문입니다.
기본 형태는 다음과 같습니다.
# for 구문의 기본형태
for (x in 벡터) {
x(원소)를 활용한 실행 구문
}
개인적으로 반복문은 코딩을 통해서 이해하는 것이 가장 빠르고 편하다고 생각하므로, 예제코드를 풀어보겠습니다.
# for 구문을 활용한 간단한 예제 (누적합 계산)
sum <- 0 # sum의 초기값 지정
for (i in 1:10) {
sum <- sum + i
print(sum)
}
# [1] 1
# [1] 3
# [1] 6
# [1] 10
# [1] 15
# [1] 21
# [1] 28
# [1] 36
# [1] 45
# [1] 55
# for 구문 활용예제
data <- mtcars
colnames(data)
# [1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
for (col in colnames(data)) { # colnames : 데이터프레임에서 열이름을 모두 불러온다.
print(col) # 내부 인자를 출력하는 함수
}
# [1] "mpg"
# [1] "cyl"
# [1] "disp"
# [1] "hp"
# [1] "drat"
# [1] "wt"
# [1] "qsec"
# [1] "vs"
# [1] "am"
# [1] "gear"
# [1] "carb"
- WHILE?
while 문의 경우 앞에서 설명드린 것처럼, 주어진 조건에 따라서 반복하게 됩니다.
기본 형태는 다음과 같습니다.
# while 구문의 기본 형태
while (조건문) {
조건문의 반환값이 TRUE일때, 수행할 실행구문
}
while 문도 간단한 예제를 통하여 이해해보도록 하겠습니다.
# while 구문을 활용한 간단한 예제 (누적합 계산)
i <- 0 #초기값 지정
while (i <= 5) {
print(i)
i = i + 1 # i 값을 갱신해준다.
}
# [1] 0
# [1] 1
# [1] 2
# [1] 3
# [1] 4
# [1] 5
- 활용
위의 예제만으로는 반복구문을 쉽게 받아들이시지 못하는 분들이 많을 것이라고 생각됩니다.
그러나 조건문과 더불어 반복문은 사용자정의 함수인 function 내부에 포함되었을 때 큰 힘을 발휘하게 됩니다!!
따라서 다음 포스트에서 사용자정의 함수와 함께 실습을 하시면, 깊은 이해가 가능하실 겁니다.
조건문과 반복문의 간단한 내용을 참고하셔서, 다음 포스트에서 만나도록 하겠습니다!
'Data Analysis > R Basic' 카테고리의 다른 글
[R] apply 함수 활용하기 - apply, sapply (0) | 2019.07.14 |
---|---|
[R] 사용자 정의 함수 활용하기 - function (0) | 2019.07.12 |
[R] 조건문 활용하기 - if, else, if else (0) | 2019.07.10 |
[R] 데이터 유형에 따른 정리(5) - dataframe (0) | 2019.07.09 |
[R] 데이터 유형에 따른 정리(4) - list (0) | 2019.07.08 |
Comments