来自二项分布的随机数
r = binornd(n,p)
r = binornd(n,p,sz1,...,szN)
r = binornd(n,p,sz)
r = binornd( n , p ) 根据试验次数 n 和每次试验的成功概率 p 指定的二项分布生成随机数。
r = binornd( n , p )
r
n
p
n 和 p 可以是具有相同大小的向量、矩阵或多维数组。或者,一个或多个参量可以是标量。 binornd 函数将标量输入扩展为常量数组,其维数与其他输入的维数相同。该函数返回与 n 和 p 大小相同的向量、矩阵或多维数组 r 。
binornd
示例
r = binornd( n , p , sz1,...,szN ) 从具有标量参数 n 和 p 的二项分布生成一个随机数数组,其中 sz1,...,szN 表示每个维度的大小。
r = binornd( n , p , sz1,...,szN )
sz1,...,szN
r = binornd( n , p , sz ) 从具有标量参数 n 和 p 的二项分布生成一个随机数数组,其中向量 sz 指定 size(r) 。
r = binornd( n , p , sz )
sz
size(r)
全部折叠
从二项分布中生成一个随机数数组。对于每个分布,您可以指定试验次数和每次试验的成功概率。
指定试验次数。
n = 10:10:60
n = 1×6 10 20 30 40 50 60
指定每次试验成功的概率。
p = 1./n
p = 1×6 0.1000 0.0500 0.0333 0.0250 0.0200 0.0167
从二项分布中生成随机数。
r = 1×6 0 1 1 0 1 1
从一个二项分布生成一个随机数数组。此处,分布参数 n 和 p 是标量。
使用 binornd 函数从 100 次试验的二项分布中生成随机数,其中每次试验的成功概率为 0.2。该函数返回一个数值。
r_scalar = binornd(100,0.2)
r_scalar =
通过指定所需的数组维度,从同一分布中生成一个 2×3 随机数数组。
r_array = binornd(100,0.2,2,3)
r_array = 2×3 18 23 20 18 24 23
或者,将所需的数组维度指定为向量。
r_array = binornd(100,0.2,[2 3])
r_array = 2×3 21 21 20 26 18 23
试验次数,指定为正整数或正整数数组。
示例: [10 20 50 100]
[10 20 50 100]
数据类型: single | double
single
double
每次试验的成功概率,指定为标量值或标量值组成的数组。 p 的所有值都必须属于区间 [0 1] 。
[0 1]
示例: [0.01 0.1 0.5 0.7]
[0.01 0.1 0.5 0.7]
每个维度的大小,指定为单独的整数参量。例如,指定 5,3,2 会从二项概率分布生成一个由随机数组成的 5×3×2 数组。
5,3,2
如果 n 或 p 是数组,则在进行任何必要的标量扩展后,指定的维度 sz1,...,szN 必须与 n 和 p 的公共维度相匹配。 sz1,...,szN 的默认值为公共维度。
如果您指定单一值 sz1 ,则 r 是大小为 sz1 × sz1 的方阵。
sz1
如果任一维度的大小是 0 或负数,则 r 是空数组。
0
对于第二个维度以上的维度, binornd 会忽略大小为 1 的尾部维度。例如, binornd ( n , p ,3,1,1,1) 生成由随机数组成的 3×1 向量。
( n , p ,3,1,1,1)
示例: 5,3,2
每个维度的大小,指定为由整数组成的行向量。例如,指定 [5 3 2] 会从二项概率分布生成一个由随机数组成的 5×3×2 数组。
[5 3 2]
如果 n 或 p 是数组,则在进行任何必要的标量扩展后,指定的维度 sz 必须与 n 和 p 的公共维度相匹配。 sz 的默认值为公共维度。
如果您指定单一值 [sz1] ,则 r 是大小为 sz1 × sz1 的方阵。
[sz1]
对于第二个维度以上的维度, binornd 会忽略大小为 1 的尾部维度。例如, binornd ( n , p ,[3 1 1 1]) 生成由随机数组成的 3×1 向量。
( n , p ,[3 1 1 1])
示例: [5 3 2]
来自二项分布的随机数,以标量值或标量值数组形式返回。
binornd 是二项分布特有的函数。Statistics and Machine Learning Toolbox™ 还提供泛型函数 random ,它支持各种概率分布。要使用 random ,请指定概率分布名称及其参数。或者,创建一个 BinomialDistribution 概率分布对象,并将该对象作为输入参量传递。请注意,分布特有的函数 binornd 比泛型函数 random 的执行速度要快。
random
BinomialDistribution
要以交互方式生成随机数,请使用 randtool ,它是用于生成随机数的用户界面。
randtool
用法说明和限制:
在以下两种情况下,生成的代码可能返回与 MATLAB ® 不同的数字序列:
输出是非标量。
输入参数对分布无效。
有关代码生成的详细信息,请参阅 Introduction to Code Generation 和 General Code Generation Workflow 。
此函数完全支持 GPU 数组。有关详细信息,请参阅 在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox) 。
此函数完全支持分布式数组。有关详细信息,请参阅 使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox) 。
在 R2006a 之前推出
random | binoinv | binocdf | binofit | binostat | binopdf | BinomialDistribution
binoinv
binocdf
binofit
binostat
binopdf