如何解决如何计算二维矩阵中每个子数组的加权中位数?
这个问题是一个新问题(我已经研究过类似的问题,但没有找到我所需要的)。因此:
将加权中位数有效地应用于2d numpy
矩阵的每个子阵列的最有效方法是什么? (没有额外的框架,但如果可能,请使用纯numpy
)
Data = np.asarray([[ 1.1,7.8,3.3,4.9],[ 6.1,9.8,5.3,7.9],[ 4.1,4.8,7.1],...
[ 1.1,7.4,3.1,[ 7.1,3.8,7.3,8.1],[ 19.1,2.8,3.2,1.1]])
weights = [0.64,0.79,0.91,0]
注意:其他问题的答案仅显示一维问题。这个问题并不能有效地处理 1.000.000 子数组
解决方法
使用@JoonyoungPark提供的Data
,您可以使用列表理解:
[np.median(i*weights) for i in Data]
[1.8535000000000001,4.3635,2.8135,1.7625000000000002,3.7729999999999997,2.5620000000000003]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。