当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R Poisson 泊松分布


R语言 Poisson 位于 stats 包(package)。

说明

具有参数 lambda 的泊松分布的密度、分布函数、分位数函数和随机生成。

用法

dpois(x, lambda, log = FALSE)
ppois(q, lambda, lower.tail = TRUE, log.p = FALSE)
qpois(p, lambda, lower.tail = TRUE, log.p = FALSE)
rpois(n, lambda)

参数

x

(非负整数)分位数向量。

q

分位数向量。

p

概率向量。

n

要返回的随机值的数量。

lambda

(非负)均值的向量。

log , log.p

逻辑性;如果为 TRUE,则概率 p 以 log(p) 形式给出。

lower.tail

逻辑性;如果为 TRUE(默认值),则概率为 ,否则为

细节

泊松分布有密度

对于 。均值和方差为

请注意, 实际上是一种极限情况(设置 ),导致 处出现点质量,另请参见示例。

如果x 的元素不是整数,则dpois 的结果为零,并出现警告。 使用 Loader 算法计算,请参阅 dbinom 中的参考。

分位数是右连续的: qpois(p, lambda) 是最小整数 使得

设置 lower.tail = FALSE 可以在默认情况下获得更精确的结果,lower.tail = TRUE 将返回 1,请参见下面的示例。

dpois 给出(对数)密度,ppois 给出(对数)分布函数,qpois 给出分位数函数,rpois 生成随机偏差。

无效的 lambda 将导致返回值 NaN ,并带有警告。

结果的长度由 rpoisn 确定,并且是其他函数的数值参数长度的最大值。

n 之外的数字参数将被回收到结果的长度。仅使用逻辑参数的第一个元素。

rpois 返回 integer 类型的向量,除非返回 double 值时生成的值超过可表示的最大整数。

例子

require(graphics)

-log(dpois(0:7, lambda = 1) * gamma(1+ 0:7)) # == 1
Ni <- rpois(50, lambda = 4); table(factor(Ni, 0:max(Ni)))

1 - ppois(10*(15:25), lambda = 100)  # becomes 0 (cancellation)
    ppois(10*(15:25), lambda = 100, lower.tail = FALSE)  # no cancellation

par(mfrow = c(2, 1))
x <- seq(-0.01, 5, 0.01)
plot(x, ppois(x, 1), type = "s", ylab = "F(x)", main = "Poisson(1) CDF")
plot(x, pbinom(x, 100, 0.01), type = "s", ylab = "F(x)",
     main = "Binomial(100, 0.01) CDF")

## The (limit) case  lambda = 0 :
stopifnot(identical(dpois(0,0), 1),
	  identical(ppois(0,0), 1),
	  identical(qpois(1,0), 0))

来源

dpois 使用 Catherine Loader 贡献的 C 代码(请参阅 dbinom )。

ppois 使用 pgamma

qpois 使用 Cornish-Fisher 扩展来包含对正态近似的偏度校正,然后进行搜索。

rpois 使用

Ahrens, J. H. 和 Dieter, U. (1982)。计算机生成的泊松分布偏离修正的正态分布。 ACM 数学软件汇刊,8, 163-179。

也可以看看

Distributions 用于其他标准分布,包括用于二项式分布的 dbinom 和用于负二项式分布的 dnbinom

poisson.test

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 The Poisson Distribution。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。