我在绘制累积分布函数时遇到了麻烦.
到目前为止我发现了这个:
scipy.stats.beta.cdf(0.2,6,7)
Run Code Online (Sandbox Code Playgroud)
但这只能给我一点意见.
这将是我用来绘制的内容:
pylab.plot()
pylab.show()
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像这样: 文件:二项分布cdf.svg
与p = .2
界限停止一次y = 1
或接近1.
第一个参数cdf
可以是值数组,而不是单个值.然后它将返回一个值数组.
import scipy.stats as stats
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,20,100)
cdf = stats.binom.cdf
plt.plot(x,cdf(x, 50, 0.2))
plt.show()
Run Code Online (Sandbox Code Playgroud)
小智 5
我认为上面的 ubuntu 用户没有建议使用正确的函数。事实上,他的回答非常具有误导性,而且总体上是不正确的。
请注意,binom.cdf()
是计算由 n 和 p 指定的二项分布的 cdf 的函数Binomial(n,p)
。也就是说,它返回 x 中每个值的随机变量的 cdf 值,而不是向量 x 指定的离散分布的实际 cdf 函数。
要计算向量 x 定义的任何分布的 cdf,只需使用以下histogram()
函数:
import numpy as np
hist, bin_edges = np.histogram(np.random.randint(0,10,100), normed=True)
cdf = cumsum(hist)
Run Code Online (Sandbox Code Playgroud)
或者,只需使用hist()
matplotlib 中的绘图函数。
归档时间: |
|
查看次数: |
8784 次 |
最近记录: |