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


R NegBinomial 负二项分布


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

说明

使用参数 sizeprob 的负二项分布的密度、分布函数、分位数函数和随机生成。

用法

dnbinom(x, size, prob, mu, log = FALSE)
pnbinom(q, size, prob, mu, lower.tail = TRUE, log.p = FALSE)
qnbinom(p, size, prob, mu, lower.tail = TRUE, log.p = FALSE)
rnbinom(n, size, prob, mu)

参数

x

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

q

分位数向量。

p

概率向量。

n

观察次数。如果是 length(n) > 1 ,则长度被视为所需的数量。

size

成功试验次数的目标或色散参数(伽玛混合分布的形状参数)。必须严格为正数,不必是整数。

prob

每次试验成功的概率。 0 < prob <= 1

mu

通过均值进行替代参数化:请参阅“详细信息”。

log , log.p

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

lower.tail

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

细节

size prob 的负二项分布具有密度

对于

这表示在达到目标成功次数之前伯努利试验序列中发生的失败次数。平均值为 ,方差为

负二项分布也可以作为泊松分布的混合出现,其均值分布为伽玛分布(参见pgamma),具有尺度参数(1 - prob)/prob和形状参数size。 (此定义允许 size 的非整数值。)

另一种参数化(通常在生态学中使用)是通过平均值 mu (见上文)和 size 分散参数,其中 prob = size/(size+mu) 。此参数化中的方差为mu + mu^2/size

如果x 的元素不是整数,则dnbinom 的结果为零,并出现警告。

案例size == 0 是集中于零的分布。这是 size 接近零的极限分布,即使 mu 而不是 prob 保持不变。但请注意,无论 mu 的值是多少,极限分布的平均值都是 0。

分位数定义为 使得 满足的最小值,其中 是分布函数。

dnbinom 给出密度,pnbinom 给出分布函数,qnbinom 给出分位数函数,rnbinom 生成随机偏差。

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

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

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

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

例子

require(graphics)
x <- 0:11
dnbinom(x, size = 1, prob = 1/2) * 2^(1 + x) # == 1
126 /  dnbinom(0:8, size  = 2, prob  = 1/2) #- theoretically integer

## Cumulative ('p') = Sum of discrete prob.s ('d');  Relative error :
summary(1 - cumsum(dnbinom(x, size = 2, prob = 1/2)) /
                  pnbinom(x, size  = 2, prob = 1/2))

x <- 0:15
size <- (1:20)/4
persp(x, size, dnb <- outer(x, size, function(x,s) dnbinom(x, s, prob = 0.4)),
      xlab = "x", ylab = "s", zlab = "density", theta = 150)
title(tit <- "negative binomial density(x,s, pr = 0.4)  vs.  x & s")

image  (x, size, log10(dnb), main = paste("log [", tit, "]"))
contour(x, size, log10(dnb), add = TRUE)

## Alternative parametrization
x1 <- rnbinom(500, mu = 4, size = 1)
x2 <- rnbinom(500, mu = 4, size = 10)
x3 <- rnbinom(500, mu = 4, size = 100)
h1 <- hist(x1, breaks = 20, plot = FALSE)
h2 <- hist(x2, breaks = h1$breaks, plot = FALSE)
h3 <- hist(x3, breaks = h1$breaks, plot = FALSE)
barplot(rbind(h1$counts, h2$counts, h3$counts),
        beside = TRUE, col = c("red","blue","cyan"),
        names.arg = round(h1$breaks[-length(h1$breaks)]))

来源

dnbinom 使用 Catherine Loader 贡献的代码通过二项式概率进行计算(请参阅 dbinom )。

pnbinom 使用 pbeta

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

rnbinom 使用推导作为泊松的伽玛混合,请参阅

Devroye, L. (1986) 非均匀随机变量生成。 Springer-Verlag,纽约。第 480 页。

也可以看看

Distributions 用于标准分布,包括 dbinom 用于二项式、dpois 用于泊松分布和 dgeom 用于几何分布(负二项式的特殊情况)。

相关用法


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