R语言 Switch语句
2021-07-26 09:14 更新
switch
语句允许根据值列表测试变量的相等性。 每个值都称为case,并且针对每种情况检查打开的变量。
语法
在 R 中创建 switch
语句的基本语法是 -
switch(expression, case1, case2, case3....)
以下规则适用于 switch
语句:
- 如果
expression
的值不是字符串,那么它被强制为整数。
- 在交换机中可以有任意数量的
case
语句。 每个案例后面都跟要比较的值和冒号。
- 如果整数的值在
1
和 nargs() - 1
(参数的最大数目)之间,则对 case
条件的相应元素求值并返回结果。
- 如果表达式求值为字符串,那么该字符串与元素的名称匹配。
- 如果有多个匹配,则返回第一个匹配元素。
- 无默认参数可用。
- 在没有匹配的情况下,如果有一个未命名的元素...它的值被返回。 (如果有多个这样的参数,则返回错误。)
流程图
例1x <- switch(
3,
"first",
"second",
"third",
"fourth"
)
print(x)
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
以上内容是否对您有帮助:
更多建议: