rに「そうでない場合」の条件のようなものはありますか?
簡単な例(機能しない):
fun <- function(x)
{
if (!x > 0) {print ("not bigger than zero")}
}
fun(5)
問題は、条件をどのように定義するかにあります。そのはず
if(!(x > 0)){
の代わりに
if(!x > 0){
それの訳は !x
は、入力(数値)を論理に変換します-これにより、ゼロを除くすべての値に対してTRUE
が得られます。そう:
> fun <- function(x){
+ if (!(x > 0)) {print ("not bigger than zero")}
+ }
> fun(1)
> fun(0)
[1] "not bigger than zero"
> fun(-1)
[1] "not bigger than zero"
試してみてください:
if(!condition) { do something }
これはどう?
fun<-function(x){ ifelse(x>0,"not bigger than zero","zero or less") }
fun(5)
[1] "Bigger than zero"