statsmodels.sandbox.distributions.extras.mvstdnormcdf¶
- statsmodels.sandbox.distributions.extras.mvstdnormcdf(lower, upper, corrcoef, **kwds)[source]¶
标准化的多元正态累积分布函数
这是scipy.stats._mvn.mvndst的一个封装,用于计算标准多元正态分布上的矩形积分。
此函数假设标准化尺度,即每个维度的方差为一,但相关性可以是任意的,协方差 = 相关矩阵
- Parameters:¶
- lower, upperarray_like, 1d
下限和上限积分限,其长度等于多元正态分布的维数。它可以包含 -np.inf 或 np.inf 以表示开放积分区间
- corrcoef
floator array_like 指定相关矩阵的三种方式之一,参见注释
- optional keyword parameters to influence integration
- maxptsint, maximum number of function values allowed. This
参数可以用来限制时间。一个合理的策略是从maxpts = 1000*N开始,然后如果误差太大,就增加maxpts。
abseps : 浮点数绝对误差容限。
releps : 浮点数相对误差容限。
- Returns:¶
- cdfvalue
float 积分的值
- cdfvalue
另请参阅
mvnormcdf未标准化的多元正态分布的累积分布函数
注释
相关矩阵 corrcoef 可以通过三种不同的方式给出 如果多元正态分布是二维的,那么只需要提供相关系数。 对于一般维度,相关矩阵可以作为上三角相关系数的一维数组按行堆叠提供,或者作为完整的相关矩阵提供
示例
>>> print(mvstdnormcdf([-np.inf,-np.inf], [0.0,np.inf], 0.5)) 0.5 >>> corr = [[1.0, 0, 0.5],[0,1,0],[0.5,0,1]] >>> print(mvstdnormcdf([-np.inf,-np.inf,-100.0], [0.0,0.0,0.0], corr, abseps=1e-6)) 0.166666399198 >>> print(mvstdnormcdf([-np.inf,-np.inf,-100.0],[0.0,0.0,0.0],corr, abseps=1e-8)) something wrong completion with ERROR > EPS and MAXPTS function values used; increase MAXPTS to decrease ERROR; 1.048330348e-006 0.166666546218 >>> print(mvstdnormcdf([-np.inf,-np.inf,-100.0],[0.0,0.0,0.0], corr, maxpts=100000, abseps=1e-8)) 0.166666588293
Last update:
Oct 16, 2024