R语言 Switch语句

2021-07-26 09:14 更新

switch ​语句允许根据值列表测试变量的相等性。 每个值都称为case,并且针对每种情况检查打开的变量。

语法

在 R 中创建 ​switch​ 语句的基本语法是 -

switch(expression, case1, case2, case3....)

以下规则适用于 ​switch ​语句:

  • 如果 ​expression​ 的值不是字符串,那么它被强制为整数。
  • 在交换机中可以有任意数量的 ​case ​语句。 每个案例后面都跟要比较的值和冒号。
  • 如果整数的值在 ​1 ​和 ​nargs() - 1​(参数的最大数目)之间,则对 ​case ​条件的相应元素求值并返回结果。
  • 如果表达式求值为字符串,那么该字符串与元素的名称匹配。
  • 如果有多个匹配,则返回第一个匹配元素。
  • 无默认参数可用。
  • 在没有匹配的情况下,如果有一个未命名的元素...它的值被返回。 (如果有多个这样的参数,则返回错误。)

流程图


例1
x <- switch(
   3,
   "first",
   "second",
   "third",
   "fourth"
)
print(x)

当上面的代码被编译和执行时,它产生以下结果 -

[1] "third"

例2

runif()​ 函数用于生成从 ​0 ​到 ​1 ​区间范围内的服从正态分布的随机数:

switch(1,2*3,sd(1:5),runif(3))  #返回(2*3,sd(1:5),runif(3))list中的第一个成分 
switch(2,2*3,sd(1:5),runif(3))  #返回第二个成分
switch(3,2*3,sd(1:5),runif(3))  #返回第三个成分

当上面的代码被编译和执行时,它产生以下结果 - 

[1] 6
[1] 1.581139
[1] 0.31508117 0.04610938 0.19489747


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号