生物信息学与算法生物信息学习

R条件语句

2020-06-05  本文已影响0人  生信编程日常

if 语句可以使得你有条件地执行代码。其形式如下所示:

单个条件判断

if (condition) {
# 条件为真时执行的代码
                } else {
# 条件为假时执行的代码 }

多重条件

你可以将多个 if 语句串联起来:

if (this) {
# 做一些操作
} else if (that) { # 做另外一些操作
} else {
#
}

但如果你有一长串 if 语句,那么就要考虑重写了。重写的一种方法是使用 switch() 函数,
它先对第一个参数求值,然后按照名称或位置在后面的参数列表中匹配返回结果:

function(x, y, op) {
  switch(op,
         plus = x + y,
         minus = x - y,
         times = x * y,
         divide = x / y,
         stop("Unknown op!")
         )
  }

代码风格

if 和 function 后面总是要跟着一对大括号({}),其中的内容应该缩进两个空格。这样通 过左侧空白就可以很容易地知道代码层次。
左大括号不应该自己占一行,而且后面要换行。右大括号应该自己占一行,除非后面跟着 else。大括号中的代码一定要缩进:

if (y < 0 && debug) {
       message("Y is negative")
     }
if (y == 0) {
                       log(x)
     } else {
y^ x }

如果 if 语句非常短,可以在一行内写下,那么可以不用大括号:

y <- 10
x <- if (y < 20) "Too low" else "Too high"

我们建议只对特别短的 if 语句采用这种形式,其他情况下还是完整形式更易于阅读:

     if (y < 20) {
       x <- "Too low"
     } else {
       x <- "Too high"
}

选自《R数据科学》

欢迎关注~


公众号二维码.jpg
上一篇下一篇

猜你喜欢

热点阅读