在r if语句中写出不等式

时间:2014-03-07 20:22:54

标签: r function if-statement

我正在r中构建一个函数。在函数中,我生成一个随机数并将其称为x。我希望我的功能可以做不同的事情:

  • If x is less than 0.1 (0 <= x < 0.1)
  • If x is less than 0.2 (0.1 <= x < 0.2)
  • 等至1。

我想写:

Myfunction = function() {   
    x = runif(1)

    if(0 <= x < 0.1) {
        do something...
    }

    if(0.1 <= x < 0.2) {
        do something... (etc)
    }
}

但这不起作用。我怎么能绕过这个?

2 个答案:

答案 0 :(得分:2)

您需要在功能中使用和(&amp;)。而不是

if( 0.1 <= x < 0.1)

你想用

if ( 0.1 <=x && x < 0.1)

答案 1 :(得分:1)

if (x < 0.1) {
  # do smth
} else if (x < 0.2) {
  # do smth else
} else {
  # final smth
}

或针对单个用例:

if (x < 0.2 && x >= 0.1) {
   # do-do-do
}