我有一个(标准化的)二维数据数组——假设自变量是x和θ,数据就是数据。(数据实际上是一个后验分布,但只是以numpy数组的形式存储)我需要计算每个维度上的一阶矩,也就是说,我需要计算二重积分
我想我可以将其实现为,例如:
firstint = np.trapz(x*Data, dx=dx, axis=1)
a = np.trapz(firstint, dx=dy)
其中dx = x[1] - x[0]
和{
但这似乎不起作用——例如,当我用2D高斯函数测试它时,我希望得到高斯峰值处的(x,y)值,但我没有
谁能给我指出正确的方向吗?我做错什么了?在
编辑:这是一个MWE,输出如下。注意,其中一个尺寸(b积分)运行良好。只有当我设置xmeas=0.5时,a积分才给出预期的答案。我只是没有正常化,还是因为其他原因期待错误的答案?在
^{pr2}$输出:
>> a: expected 0.1, got 0.147652018282
>> b: expected 0.523598775598, got 0.523610579349
目前没有回答
相关问题 更多 >
编程相关推荐