我试图做的是玩一些随机分布。我不希望它变得正常。但就目前而言,正常更容易。
import matplotlib.pyplot as plt
from scipy.stats import norm
ws=norm.rvs(4.0, 1.5, size=100)
density, bins = np.histogram(ws, 50,normed=True, density=True)
unity_density = density / density.sum()
fig, ((ax1, ax2)) = plt.subplots(nrows=1, ncols=2, sharex=True, figsize=(12,6))
widths = bins[:-1] - bins[1:]
ax1.bar(bins[1:], unity_density, width=widths)
ax2.bar(bins[1:], unity_density.cumsum(), width=widths)
fig.tight_layout()
然后,我能做的就是根据点数来可视化CDF。
density1=unity_density.cumsum()
x=bins[:-1]
y=density1
plt.plot(x, density1, 'o')
因此,我一直试图做的是在np.直方图的输出上使用np.interp函数,以获得表示CDF的平滑曲线并提取百分点以绘制它们。理想情况下,我需要尝试手动完成所有操作并使用scipy中的ppf函数。作为一名本科生,我一直在与统计学作斗争。我现在在读研究生,并试图让我尽可能多地进行这样的练习,以便更深入地了解正在发生的事情。我对这项任务已经到了绝望的地步。谢谢!
皈依舞
相关分类