Р Если... Иначе
Условия и операторы 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")
}
В этом примере мы используем две переменные, a и b , которые используются как часть оператора if, чтобы проверить, больше ли b , чем a . Поскольку a равно 33 , а b равно 200 , мы знаем, что 200 больше 33, поэтому мы выводим на экран, что «b больше а».
R использует фигурные скобки { } для определения области действия в коде.
иначе если
Ключевое else if
слово — это способ 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 if
операторов, сколько хотите в R.
Если еще
Ключевое 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.")
}
И
Символ & (и) является логическим оператором и используется для объединения условных операторов:
Пример
Проверьте, больше ли a, чем b, И если c больше, чем a:
a <- 200
b <- 33
c <- 500
if (a > b & c > a){
print("Both conditions are true")
}
ИЛИ
Символ |
(или) является логическим оператором и используется для объединения условных операторов:
Пример
Проверьте, больше ли a, чем b, или если c больше, чем a:
a <- 200
b <- 33
c <- 500
if (a > b | a > c){
print("At
least one of the conditions is true")
}