如果是其他运营商

时间:2014-04-19 21:42:54

标签: r function if-statement

有人可以告诉我R中的开关如果为true则返回第二个参数,如果为false则返回第三个参数?

我搜索了switchif else function,我查看了文档但是在使用无处不在的术语时,如果和其他方法似乎很难确定解决方案。

我正在寻找类似的东西:

f(TRUE,1,2); f(FALSE,1,2)
[1] 1
[1] 2

我正在阅读Julia的文档,这让我意识到我在R中的一些知识差距。在Julia,有一个操作员可用。

(true  ? 1 : 2) 
1
(false ? 1 : 2)
2

2 个答案:

答案 0 :(得分:6)

试试这个

 ifelse(condition, 1, 2)

奇怪的是,它名为ifelse(): - )

PS虽然我们正在使用它,但请不要使用TF,请使用TRUEFALSE。每一个自尊的风格指南都是如此。

答案 1 :(得分:4)

只需ifelse

ifelse(TRUE,1,2)
## [1] 1
ifelse(FALSE,1,2)
## [1] 2