如何解决检查函数参数的值是否与指定的可能性匹配的最佳方法是什么?
假设我有一个非常简单的函数,它检查 an 的值并根据它是否与多种可能性之一匹配而表现不同。这是一个最小的例子:
is_duck <- function(x) {
if (x == 'duck') return("QUACK")
else return("That's not a duck!")
}
只要我按照我传递的函数行事,这就足够好了。但是 R 是动态类型的,所以它是一片无法无天的土地。我希望 x == DUCK
是一个长度为 1 的逻辑向量,我可以将它放入我的分支逻辑中,但我不能保证它会是。有没有更好、类型更安全的方法来完成我想要的行为?
我想过 if(identical(x,'duck'))
但如果 x 有一些额外的属性,这会失败,这有点太具体(即,x <- set_names('duck')
会返回“那是不是鸭子!”即使是)。 isTRUE(x == 'duck')
是我要找的吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。