R If ... Else 语句

条件和 If 语句

R 支持数学中的常用逻辑条件:

运算符 名称 示例 试一试
== 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 关键字编写的,用于指定条件为 :

实例

a <- 33
b <- 200

if (b > a) {
  print("b is greater than a")
}
亲自试一试 »

在这个例子中,我们使用了两个变量,ab,它们被用作 用于测试 b 是否大于 a 的 if 语句。 因为 a33,而 b200,我们知道200大于33,所以我们在屏幕上打印"b大于a"。

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 相等"。

您可以在 R 中使用任意数量的 else if 语句。


If Else

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

&符号(and)是逻辑运算符,用于组合条件语句:

实例

测试a是否大于b,如果c大于a:

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

if (a > b & c > a){
  print("Both conditions are true")
}
亲自试一试 »

OR

|符号(或)是逻辑运算符,用于组合条件语句:

实例

测试a是否大于b,或者c是否大于a:

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

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