在以下情况下rpois()会做什么?

时间:2019-06-04 10:07:48

标签: r poisson

rpois()取两个值( n lambda )来根据泊松分布生成 n 随机数。

但是,在以下情况下rpois()在做什么?

> n = c(0,1,2,3,4,5,6,7,8,9)
> lamda = 10
> rpois(n, lamda)
 [1] 13 15 10  9 10 11 10 10 11 15
> 

1 个答案:

答案 0 :(得分:5)

来自docs

 The length of the result is determined by ‘n’ for ‘rpois’, and is
 the maximum of the lengths of the numerical arguments for the
 other functions.

因此与以下内容相同:

rpois(length(n), lambda)

多挖一点,最终调用do_random1 in src/main/random.c。基本上说:

if (length(param1) == 1) {
  n = as.integer(param1)
} else {
  n = length(param1)
}

但是在C语言中,并且要确保它可以与“长”向量等一起使用。