在R语言中,switch()函数是多分支结构,其使用方法如下:
switch(expr, list)
expr为表达式,其值或为一个整数值或为一个字符串。
list为一个列表。
其运行机理为:如果expr的计算结果为整数,且值在1~length(list)之间时,则switch()函数返回列表相应位置的值。如果expr的值超出范围,则没有返回值(老版本的R中返回NULL)。
举例1:
x
switch(x, "翔宇亭IT乐园", "R语言学习", "翔宇亭IT乐园欢迎你来")
举例2:
switch(3, 3+5, 3*5, 3-5, 3**5)
举例3:
switch(2*2,mean(1:10),sum(1:10),max(1:10),min(1:10),sqrt(1:10))
如果switch()中的list参数是有名定义时,则当expr等于元素名时,返回变量名对应的值,否则没有返回值。
举例4:
you.like
switch(you.like, drink="water", meat = "beef", fruit = "apple", vegetable="cabbage")
各部分执行结果如下: