R 만약 ... 그렇지 않으면


조건 및 If 문

R은 수학의 일반적인 논리 조건을 지원합니다.

Operator Name Example Try it
== Equal x == y
!= Not equal x != y
> Greater than x > y
< Less than x < y
>= Greater than or equal to x >= y
<= Less than or equal to x <= y

이러한 조건은 여러 가지 방법으로 사용할 수 있으며 가장 일반적으로 "if 문" 및 루프에서 사용할 수 있습니다.

"if 문"은 키워드와 함께 작성되며 조건이 다음과 if같은 경우 실행할 코드 블록을 지정하는 데 사용됩니다 .TRUE

예시

a <- 33
b <- 200

if (b > a) {
  print("b is greater than a")
}

이 예에서 우리는 b 가 a보다 큰지 테스트하기 위해 if 문의 일부로 사용되는 두 개의 변수 ab 를 사용 합니다 . a33 이고 b200 이므로 200이 33보다 크다는 것을 알고 "b는 a보다 큼"을 화면에 출력합니다.

R은 중괄호 { }를 사용하여 코드의 범위를 정의합니다.


그렇지 않으면

키워드는 " else if이전 조건이 true가 아닌 경우 이 조건을 시도하십시오"라고 말하는 R의 방식입니다.

예시

a <- 33
b <- 33

if (b > a) {
  print("b is greater than a")
} else if (a == b) {
  print ("a and b are equal")
}

이 예 a에서 는 와 같으 b므로 첫 번째 조건은 참이 아니지만 else if조건이 참이므로 "a와 b가 같음"을 화면에 출력합니다.

else ifR에서 원하는 만큼 많은 문을 사용할 수 있습니다 .


다른 경우라면

키워드 는 else앞의 조건에 의해 포착되지 않는 모든 것을 포착합니다.

예시

a <- 200
b <- 33

if (b > a) {
  print("b is greater than a")
} else if (a == b) {
  print("a and b are equal")
} else {
  print("a is greater than b")
}

이 예에서 a 는 b 보다 크므 로 첫 번째 조건은 참이 아니며 else if 조건도 참이 아니므로 else 조건으로 이동하여 "a가 b보다 큼"을 화면에 출력합니다.

else다음 없이도 사용할 수 있습니다 else if.

예시

a <- 200
b <- 33

if (b > a) {
  print("b is greater than a")
} else {
  print("b is not greater than a")
}


중첩된 If 문

if명령문 내부 에 명령문 을 가질 수도 있습니다 . if이를 중첩 if 명령문이라고 합니다.

예시

x <- 41

if (x > 10) {
  print("Above ten")
  if (x > 20) {
    print("and also above 20!")
  } else {
    print("but not above 20.")
  }
} else {
  print("below 10.")
}

그리고

& 기호( and )는 논리 연산자이며 조건문을 결합하는 데 사용됩니다.

예시

b보다 큰지 테스트하고, c가 a보다 큰지 테스트:

a <- 200
b <- 33
c <- 500

if (a > b & c > a){
  print("Both conditions are true")
}

또는

기호(또는) 는 |논리 연산자이며 조건문을 결합하는 데 사용됩니다.

예시

b보다 큰지 또는 c가 보다 큰지 테스트:

a <- 200
b <- 33
c <- 500

if (a > b | a > c){
  print("At least one of the conditions is true")
}