【问题标题】:multivariate numpy does not plot a normal distribution please help correct the mistake多元numpy不绘制正态分布请帮助纠正错误
【发布时间】:2012-03-13 23:25:17
【问题描述】:

多元numpy包numpy.random.multivariate_normal..不返回正态分布图...现场给出的例子。

import matplotlib.pyplot as plt
x,y = np.random.multivariate_normal(mean,cov,5000).T
plt.plot(x,y,'x'); plt.axis('equal'); plt.show()

绘制时不给出正态分布曲线。我是 numpy 的新手,我想得到一个正态分布曲线..所以请帮忙。 我想在二维中绘制 x、y 和普通 pdf。也就是说,我想证明 x 和 y 遵循“多元”正态分布。

【问题讨论】:

    标签: python numpy matplotlib scipy distribution


    【解决方案1】:

    numpy.random.multivariate_normal() 样本来自多元正态分布。将这些样本中的两个坐标相互绘制不会显示一维正态分布曲线。 numpy 本身没有计算一维正态分布曲线的函数。不过,如果这是您真正想要的,那么计算自己很容易:

    def normpdf(x, mean, std):
        z = (x - mean) / std
        return numpy.exp(-z**2/2.0)/numpy.sqrt(2*numpy.pi)/std
    

    【讨论】:

    • 我真正想要的是..在二维空间中绘制 x,y 和正态分布的值..感谢您的帮助
    【解决方案2】:

    我认为对于双变量,您可以查看 wikipedia 上给出的公式: http://en.wikipedia.org/wiki/Multivariate_normal_distribution

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-23
      • 2016-02-13
      • 2013-06-10
      • 1970-01-01
      • 1970-01-01
      • 2012-04-25
      • 2017-12-15
      • 1970-01-01
      相关资源
      最近更新 更多