조건문이란, 주어진 조건식의 결과에 따라 별도의 명령을 수행하도록 제어하는 명령문으로 프로그래밍에서 조건을 판단하여 해당 조건에 맞는 상황을 수행하기 위해 처리하는 문장을 말한다.
R에서는 조건문을 수행하는데 ifelse문과 if문 두가지로 구현할 수 있다.
ifelse와 if문은 스칼라 단위로 하나씩 조건을 확인하기에 조건식의 변수로 벡터, 리스트등이 선언될 수 없다.
1. ifelse함수
- 조건별로 참과 거짓일때의 리턴값 전달 가능(복잡한 프로그래밍 처리 불가)
ifelse( 조건식, 참일때 리턴값(생략불가), 거짓일때 리턴값(생략불가))
v1 <- 2
v2 <- 5
#조건이 참일 때
ifelse(v1 < 5,v2 <- c(v2,10), v2 <- c(v2,20))
> v2
[1] 5 10
#조건이 거짓일 때
ifelse(v1 > 5,v2 <- c(v2,10), v2 <- c(v2,20))
> v2
[1] 5 20
2. if문
- 조건의 참 거짓에 따른 여러 프로그래밍 처리 가능
1) if (조건) {
참일때 리턴/연산
} else {
거짓일때 리턴/연산
}
v1 <- 5
if(v1 < 5){
print('v1은 5보다 작습니다')
} else {
print('v1은 5보다 같거나 큽니다')
}
[1] "v1은 5보다 큽니다"
2) if (조건1) {
조건1 참일 때 리턴/연산
} else if (조건2) {
(조건1이 거짓이면서) 조건2 참일 때 리턴/연산
} else {
조건1,조건2 모두 거짓일 때 리턴/연산
}
v1 <- 5
if(v1 <5){
print('v1은 5보다 작습니다')
} else if(v1==5) {
print('v1은 5입니다')
} else{
print('v1은 5보다 큽니다')
}
[1] "v1은 5입니다"
* 연산자
1. 비교연산자(관계연산자) : ==, >, <, !=, >=, <=,!(not)
2. 논리연산자 :&(and), |(or)
ex. (v1 > 5) & (v1 < 7) # 사용 가능 (v1 > 5) and (v1 < 7) # and 사용 불가
ex. (v1 > 5) | (v1 < 7) # 사용 가능 (v1 > 5) or (v1 < 7) # or 사용 불가
3. 포함연산자(in연산자) : %in%
ex. v1[v1 %in% c(1,9)]
4. 산술연산자 : +,-,*,/,%/%(몫), %%(나머지), **또는 ^(제곱수)
'R > R' 카테고리의 다른 글
[R] 23. 시각화 - 그래프 디자인하기 (0) | 2023.12.08 |
---|---|
[R] 22. 데이터시각화(plot함수) (0) | 2023.12.08 |
[R] 08. 문자열관련함수(stringr) (0) | 2023.11.29 |
[R] 04. 함수(function) (0) | 2023.11.22 |
[R] 03. 형 변환(casting) (0) | 2023.11.22 |