改变R中`outer`中使用的`dnorm`的`sd`?

时间:2017-07-14 20:15:55

标签: r function matrix

我想知道我是否可以在sd = 2中添加dnorm()我在outer()中使用的R代码中的<{1}}?

  mu = seq(178 - 3 * 20, 178 + 3 * 20, by = 5)
   y = seq(min(mu) - 3 * 2, max(mu) + 3 * 2, by = 1)

cond = outer(y, mu, dnorm) ## Here the `dnorm` is using the default `sd = 1`.
                           ## Could the default `sd` be changed to `2`? 

2 个答案:

答案 0 :(得分:2)

是的,因为您可以将可选参数传递给您使用的函数。像这样:

mu = seq(178 - 3 * 20, 178 + 3 * 20, by = 5)
y = seq(min(mu) - 3 * 2, max(mu) + 3 * 2, by = 1)

cond = outer(y, mu, dnorm, sd = 2)

帮助页面?outer btw。

也对此进行了解释

答案 1 :(得分:2)

是的,只需使用cond = outer(y, mu, dnorm, sd=2)

即可
args(outer)
function (X, Y, FUN = "*", ...) 

...表示将任何其他参数传递给函数,在本例中为dnorm