'trimmed' 正态分布的 cdf

cdf for 'trimmed' normal distribution

我有一个左删失正态分布:它是 'flat'(等于零)到 mu,然后是正态分布。

我知道如何计算标准正态分布的 cdf:

from scipy.stats import norm
norm(mu, sigma).cdf(1)

例如。但是对于这个 'truncated' 版本来说当然是不正确的。都不正确:

norm(mu, sigma).cdf(1) - norm(mu, sigma).cdf(0)

因为我应该根据左尾不存在的事实按比例调整值。正确的做法是什么?

如评论中所建议,

from scipy.stats import truncnorm
truncnorm(loc=1, scale=2, a=0, b=np.inf).cdf(x)

在哪里

  • loc - 平均值
  • scale - 标准差
  • a - 左截断点
  • b - 右截断点
  • x - 评价点