以下R功能
tmp <- function(p)
rep(0, length.out = p)
让我感到困惑,因为
> tmp()
[1] 0
我希望通话中出现错误,因为p
丢失了。 rep
的文档说明了
函数rep是一个原语,但参数名称的(部分)匹配与普通函数一样。您不能再将缺失的参数传递给例如length.out。
我不明白这里的逻辑。为什么rep
似乎忽略p
缺失?
R版本3.0.2(2013-09-25)
答案 0 :(得分:5)
在文档中,我看到:
默认行为就像呼叫是
一样rep(x,times = 1,length.out = NA,每个= 1)
但它不适用于需要时间参数的rep.int
:
>rep(0,)
[1] 0
>rep.int(0,)
Error in rep.int(0, ) : argument "times" is missing, with no default