与其他语言中的 switch
语句类似,R 也有一个类似的结构,即 switch()
函数。
switch() 函数的语法
switch (statement, list)
在这里,该语句被求值,并根据该值,返回 列表 中的相应项。
示例:switch() 函数
如果求值结果是一个数字,则返回列表中的该项。
> switch(2,"red","green","blue")
[1] "green"
> switch(1,"red","green","blue")
[1] "red"
在上面的示例中,"red","green","blue"
构成了一个三项列表。
switch()
函数返回与求值的数字值相对应的项。
如果数字值超出范围(大于列表中的项目数或小于 1),则返回 NULL
。
> x <- switch(4,"red","green","blue")
> x
NULL
> x <- switch(0,"red","green","blue")
> x
NULL
语句的结果也可以是字符串。在这种情况下,将返回匹配的命名项的值。
> switch("color", "color" = "red", "shape" = "square", "length" = 5)
[1] "red"
> switch("length", "color" = "red", "shape" = "square", "length" = 5)
[1] 5