spl*_*ter 3 python normal-distribution matplotlib scipy python-3.x
我试图scipy在Python3中使用截断的正态分布.我想做一些简单的事情:绘制截断法线的pdf,其中心为0.5,范围从0到1.我有以下代码行
from scipy import truncnorm
import matplotlib.pyplot as plt
plt.plot([truncnorm.pdf(p,0,1, loc=0.5) for p in np.arange(0,1.1,0.1)])
Run Code Online (Sandbox Code Playgroud)
然而,这并没有给出我所期望的漂亮的钟形概率分布函数.相反,它在0.5之前等于0,我无法弄清楚为什么.有什么建议吗?
这是根据文档记录的程序truncnorm.
# user input
myclip_a = 0
myclip_b = 1
my_mean = 0.5
my_std = 0.3
a, b = (myclip_a - my_mean) / my_std, (myclip_b - my_mean) / my_std
x_range = np.linspace(-1,2,1000)
plt.plot(x_range, truncnorm.pdf(x_range, a, b, loc = my_mean, scale = my_std))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3098 次 |
| 最近记录: |