2026a

# poissrnd


泊松分布的随机数

函数库: TyStatistics

# 语法

r = poissrnd(lambda)

r = poissrnd(lambda,sz1,...,szN)

# 描述

r = poissrnd(lambda) 根据速率参数 lambda 指定的泊松分布生成随机数。

lambda 可以是标量、向量、矩阵或多维数组。示例


r = poissrnd(lambda,sz1,...,szN) 使用标量率参数 lambda 从泊松分布生成一个随机数数组,其中 sz1,...,szN 表示每个维度的大小。示例

# 示例

来自多个泊松分布的随机数数组
从泊松分布生成随机数数组。 指定每个分布的平均比率。
using TyMath
using TyStatistics
lambda = 10:2:20
lambda = 10:2:20

从泊松分布生成随机数。

rng = MT19937ar(5489)
r = poissrnd(rng,lambda)
6-element Vector{Float64}:
 14.0
 13.0
 14.0
  9.0
 14.0
 31.0
来自一个泊松分布的随机数数组
从一个泊松分布生成一组随机数。 这里,分布参数 lambda 是一个标量。

使用 poissrnd 函数从平均率为 20 的泊松分布中生成随机数。该函数返回一个数字。

using TyMath
using TyStatistics
rng = MT19937ar(5489)
r_scalar = poissrnd(rng,20)
r_scalar = 9.0

通过指定所需的数组维度,从同一分布生成一个 2×3 随机数数组。

r_array = poissrnd(rng,20,2,3)
r_array = 2×3 Matrix{Float64}:
 13.0  14.0  18.0
 26.0  16.0  21.0

# 输入参数

lambda - 速率参数
正值 | 正值数组
速率参数,指定为正值或正值数组。 rate 参数表示给定时间间隔内的平均事件数。

例子: 2

数据类型: Float32 |Float64 |Int8 |Int16 |Int32 |Int64 |Int128 |UInt8 |UInt16 |UInt32 |UInt64 |UInt128

sz1,...,szN — 每个维度的大小(作为单独的参数)
非负整数
每个维度的大小,指定为非负整数的单独参数。 例如,指定 5,3,2 会根据泊松概率分布生成一个 5×3×2 随机数数组。

如果 lambda 是一个数组,则指定的维度 sz1,...,szN 必须与 lambda 的维度匹配。

  • 如果您指定单个值 sz1,则 r 是长度为 sz1 的向量。

  • 如果任何维度的大小为 0,则 r 为空数组。

例子: 5, 3, 2

数据类型: Float32 |Float64 |Int8 |Int16 |Int32 |Int64 |Int128 |UInt8 |UInt16 |UInt32 |UInt64 |UInt128

# 输出参数

r - 泊松分布中的随机数
标量值 | 标量值数组
泊松分布中的随机数,以标量值或标量值数组形式返回。

数据类型: Float32 |Float64 |Int8 |Int16 |Int32 |Int64 |Int128 |UInt8 |UInt16 |UInt32 |UInt64 |UInt128

# 替代功能

  • poissrnd 是特定于泊松分布的函数。 TyStatistics 还提供通用函数 random,它支持各种概率分布。 要使用random,请创建一个 PoissonDistribution 概率分布对象并将该对象作为输入参数传递。 请注意,特定于分布的函数 poissrnd 比通用函数 random 快。

# 另请参阅

random | poisspdf | poisscdf | poissinv | poisstat | poissfit