【发布时间】:2020-04-22 10:18:02
【问题描述】:
假设我有一个概率密度函数热图作为numpy ndarray(m,n)。是否有一个函数可以自动计算将这个矩阵视为概率密度的平均值?我似乎找不到可以自动执行此操作的功能。
当然,一个简单的解决方案是创建一个权重等于数组索引的加权平均值,但似乎应该有一个内置函数可以做到这一点。
分类:
假设我的数组是heatmap = [[0,0,0,1],[0,0,1,0],[0,0,1.5,0],[0,0,0,0]]。
不,如果我们假设这不是归一化概率,您可以计算概率密度的平均值和其他属性。
例如,x 方向的平均值为
xx = np.arange(0,heatmap.shape[1],1)
weights = np.tile(xx,(heatmap.shape[0],1))
mean_x = np.average(weights, weights = heatmap_avg_left)
我只是在 numpy 或 scipy 中寻找一个可以自动执行此操作和其他概率属性的函数
【问题讨论】:
-
您能否澄清您的问题,以展示您的数组的最小示例以及您期望的含义?
-
您是在寻找每个方向数据的第 50 个百分位,还是质心?
-
刚刚添加了一个说明。是的,有点像将数组视为概率密度的质心。
-
您的代码对于不在您脑海中的人来说没有多大意义。请发布一个完整的示例。
-
请修正您的代码以使用已定义的变量...
标签: python numpy scipy probability-density