# expcdf
指数分布累积分布函数
函数库: TyStatistics
# 语法
p = expcdf(x)
p = expcdf(x,mu)
p,pLo,pUp = expcdf(x,mu,pCov)
p,pLo,pUp = expcdf(x,mu,pCov,alpha)
___ = expcdf(___,"upper")
# 说明
p = expcdf(x) 返回标准指数分布的累积分布函数 (cdf),在 x 中的值处进行评估。示例
p = expcdf(x,mu) 返回均值为 mu 的指数分布的 cdf,在 x 中的值处进行评估。示例
当 mu 是方差为 pCov 的估计值时,p,pLo,pUp = expcdf(x,mu,pCov) 还返回 p 的 95% 置信区间 pLo,pUp。示例
p,pLo,pUp = expcdf(x,mu,pCov,alpha) 指定置信区间 [pLo pUp] 的置信水平为 100(1–alpha)%。
___ = expcdf(___,"upper") 返回 cdf 的补数,在 x 的值处进行评估,使用一种比用 1 减去下尾值更准确地计算极端上尾概率的算法。"upper" 可以跟在前面语法中的任意输入参数组合之后。示例
# 示例
标准指数分布 cdf
using TyStatistics
p = expcdf([1 2])
p[2] - p[1]
ans = 0.23254415793482963
计算指数 cdf
通过计算几个不同 µ 选择的 µ*log(2) 的 cdf 来确认中值。
using TyStatistics
mu = 10:10:60
p = expcdf(log(2)*mu,mu)
6-element Vector{Float64}:
0.5
0.5
0.5
0.5
0.5
0.5
平均值的 cdf 始终等于 1-1/e(~ 0.6321)。
通过计算平均值 1 到 6 的指数 cdf 来确认结果。
mu = 1:6
x = mu
p = expcdf(x,mu)
6-element Vector{Float64}:
0.6321205588285577
0.6321205588285577
0.6321205588285577
0.6321205588285577
0.6321205588285577
0.6321205588285577
指数 cdf 值的置信区间
从平均值为 5 的指数分布中抽取 1000 个随机数,生成一个样本。
using TyStatistics
using TyMath
rng = MT19937ar(5489) # For reproducibility
x = exprnd(rng,5,1000,1);
用置信区间估计平均值。
muhat,muci = expfit(x)
muhat = 5.0128704824896175
muci = 2-element Vector{Float64}:
4.716126381258753
5.3386736191742905
估计均值估计的方差。
_,nCov = explike(muhat,x)
nCov = 0.02512887047421571
创建置信区间,估计观测值在区间 [0 1] 内的概率。
p,pLo,pUp = expcdf(1,muhat,nCov);
pCi = [pLo; pUp]
pCi = 2-element Vector{Float64}:
0.17096905206593985
0.19123086753983554
expcdf 使用均值对数估计分布的正态近似来计算置信区间。通过评估置信区间 muci 上的 expcdf 来计算 p 更准确的置信区间。
pCi2 = expcdf(1,muci)
pCi2 = 2-element Vector{Float64}:
0.19106638459245778
0.17081537733535349
边界 pCi2 是相反的,因为较低的平均值会使事件发生的可能性更大,而较高的平均值会使事件发生的可能性更小。
互补 cdf(尾部分布)
using TyStatistics
p1 = 1 - expcdf(50,1)
p1 = 0.0
expcdf(50,1) 接近于 1,因此 p1 变为 0。指定"upper",以便 expcdf 更准确地计算极端上尾概率。
p2 = expcdf(50,1,"upper")
p2 = 1.9287498479639178e-22
# 输入参数
x - 计算 cdf 的值
非负标量值 | 非负标量值数组
计算 cdf 的值,指定为非负标量值或非负标量值数组。
- 要在多个值上计算 cdf,请使用数组指定 x;
- 要计算多个分布的 cdf,请使用数组指定 mu。
如果输入参数 x 和 mu 中的一个或两个都是数组,那么数组大小必须相同。在这种情况下,expcdf 将每个标量输入扩展为与数组输入大小相同的常量数组。p 中的每个元素是由 mu 中的相应元素指定的分布的 cdf 值,在 x 中的相应元素处进行计算。
示例: [3 4 7 9]
数据类型: Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128
mu - 平均值
1(默认值)| 正标量值 | 正标量值数组
指数分布的平均值,指定为正标量值或正标量值数组。
- 要在多个值上计算 cdf,请使用数组指定 x;
- 要计算多个分布的 cdf,请使用数组指定 mu。
如果输入参数 x 和 mu 中的一个或两个都是数组,那么数组大小必须相同。在这种情况下,expcdf 将每个标量输入扩展为与数组输入大小相同的常量数组。p 中的每个元素是由 mu 中的相应元素指定的分布的 cdf 值,在 x 中的相应元素处进行计算。
示例: [1 2 3 5]
数据类型: Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128
pCov - 均值估计的方差
正标量值
mu 估计值的方差,指定为正标量值。
- 要在多个值上计算 cdf,请使用数组指定 x;
- 要计算多个分布的 cdf,请使用数组指定 mu。
可以使用 expfit 或 mle 根据数据估计 mu。然后,您可以使用 explike 估计 mu 的方差。由此得出的置信区间边界基于 mu 估计对数分布的正态近似。您可以通过将 expcdf 应用于 expfit 返回的置信区间来获得一组更准确的边界。
示例: 0.10
数据类型: Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128
alpha - 重要性水平
0.05(默认值)| 范围内的标量(0,1)
置信区间的显著性水平,指定为 (0,1) 范围内的标量。置信水平为 100(1–alpha)%,其中 alpha 是置信区间不包含真实值的概率。
示例: 0.01
数据类型: Float32 | Float64 | Int8 | Int16 | Int32 | Int64 | Int128 | UInt8 | UInt16 | UInt32 | UInt64 | UInt128
# 输出参数
p - cdf 值
标量值 | 标量值数组
在 x 处求值的 cdf 值,以标量值或标量值数组形式返回。在进行任何必要的标量扩展后,p 的大小与 x 和 mu 相同。p 中的每个元素都是由 mu 中相应元素指定的分布的 cdf 值,在 x 中的相应元素处求值。
pLo - p 的置信下限
标量值 | 标量值数组
p 的置信下限,以标量值或标量值数组形式返回。pLo 与 p 的大小相同。
pUp - p 的置信上限
标量值 | 标量值数组
p 的置信上限,以标量值或标量值数组形式返回。pUp 与 p 的大小相同。
# 更多信息
指数累积分布函数
p 的置信上限,以标量值或标量值数组形式返回。pUp 与 p 的大小相同。
指数分布是一类单参数曲线。参数 μ 是平均值。
指数分布的 cdf 为:
结果 p 是平均值为 μ 的指数分布中单个观测值落在区间 [0, x] 内的概率。指数分布的常见替代参数化是使用 λ(定义为区间内事件的平均数量)而不是 μ(即事件发生的平均等待时间)。λ 和 μ 是倒数。
# 替代功能
expcdf 是指数分布特有的函数。Syslab 统计工具箱还提供通用函数 cdf,它支持各种概率分布。要使用 cdf,请创建 ExponentialDistribution 概率分布对象并将该对象作为输入参数传递,或指定概率分布名称及其参数。请注意,分布特有的函数 expcdf 比通用函数 cdf 更快;
使用概率分布函数应用为概率分布创建累积分布函数 (cdf) 或概率密度函数 (pdf) 的交互式图。