0
我正在尝试生成一个三维多变量正态分布,其值在每个维度的范围从大约0到100。什么是一维情况下方差的等效协方差矩阵?
当我生成均值50和方差16一维正态分布:
data = random.normal(50, 16, 1000)
所得分布具有值的范围从约0到100。但是,当我扩展该多变量情况下,只有数值范围从35到65:
covar = [[16, 0, 0], [0, 16, 0], [0, 0, 16]]
data = random.multivariate_normal([50, 50, 50], covar, 1000)
当使用random.normal
为三个维度我得到预期的结果,值范围从0到100。
data = random.normal(50, 16, size=(3,1000))
这种差异从哪里来?为了得到我想要在多因素情况下,每个维度值的范围要我做的协方差矩阵是这样的:
covar = [[300, 0, 0], [0, 300, 0], [0, 0, 300]]
这似乎与均值的正态分布完全不合理50.
任何帮助深表感谢!
现在有道理!我认为'np.random.multivariate_normal'也使用标准偏差,但显然不是。谢谢你的帮助! – mirelio
它被称为co *方差*矩阵的原因... –
我认为你的意思是“(即方差的平方根)”而不是“(即方差的平方)” – ayhan