负二项分布模型atlab
时间: 2023-12-05 15:03:13 浏览: 30
在 MATLAB 中,负二项分布可以使用 nbpdf 函数来计算概率质量函数,使用 nbcdf 函数来计算累积分布函数,使用 nbinrnd 函数来生成随机样本。
例如,假设我们进行一系列独立的伯努利试验,每次试验成功的概率为 p=0.3。现在我们想知道,在进行固定数量的试验 n=10 之前,需要进行多少次试验才能达到 k=3 次成功的概率是多少?
可以使用下面的代码计算概率:
```matlab
p = 0.3;
n = 10;
k = 3;
prob = nbpdf(k, n, p)
```
执行以上代码,得到的结果是:
```
prob = 0.2668279328
```
这意味着在进行 6 次试验之前获得 3 次成功的概率是 0.2668279328。
如果我们想计算在进行固定数量的试验 n=10 之前,需要进行多少次试验才能达到至少 k=3 次成功的概率,可以使用下面的代码计算累积分布函数:
```matlab
p = 0.3;
n = 10;
k = 3;
prob = nbcdf(k-1, n, p)
```
执行以上代码,得到的结果是:
```
prob = 0.6476490118
```
这意味着在进行 5 次或更少的试验之前获得 3 次或更多的成功的概率是 0.6476490118。
如果我们想生成 100 个符合负二项分布的随机样本,可以使用下面的代码:
```matlab
p = 0.3;
n = 10;
k = 3;
sample = nbinrnd(n, p, 1, 100)
```
执行以上代码,得到的结果是一个 1x100 的矩阵,其中包含了 100 个符合负二项分布的随机样本。