R中的switch-case用法介绍

switch-case语句代替将变量与多个整数值进行比较的long if语句。 R中的switch case是多路分支语句。它允许针对值列表测试变量是否相等。
Switch语句遵循映射和搜索值列表的方法。如果一个特定值有多个匹配项, 则switch语句将返回与表达式匹配的值的第一个匹配项。
语法如下:

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

在此, 表达式与值列表匹配, 并返回相应的值。
有关开关案例声明的要点:
  • 带有字符串的表达式类型始终与列出的情况匹配。
  • 不是字符串的表达式, 则此exp被强制为整数。
  • 对于多个匹配项, 将使用第一个match元素。
  • R开关大小写中没有默认参数大小写。
  • 如果没有匹配的大小写, 则可以使用未命名的大小写。
流程图:
R中的switch-case用法介绍

文章图片
范例1:
# Following is a simple R program # to demonstrate syntax of switch. val < - switch( 4 , "Geeks1" , "Geeks2" , "Geeks3" , "Geeks4" , "Geeks5" , "Geeks6" ) print (val)

输出如下:
[1] "Geeks4"

范例2:
# Following is val1 simple R program # to demonstrate syntax of switch.# Mathematical calculationval1 = 6 val2 = 7 val3 = "s" result = switch( val3, "a" = cat( "Addition =" , val1 + val2), "d" = cat( "Subtraction =" , val1 - val2), "r" = cat( "Division = " , val1 / val2), "s" = cat( "Multiplication =" , val1 * val2), "m" = cat( "Modulus =" , val1 % % val2), "p" = cat( "Power =" , val1 ^ val2) )print (result)

【R中的switch-case用法介绍】输出如下:
multiplication = 42NULL

    推荐阅读