python - 实现两个二维数组之间的加权平均
问题描述
假设我想取两个二维数组之间的加权平均值,比如x
和y
,我想给出y
比 更高的重要性x
。我知道这样numpy.average
做,但我希望看到一个适用于我的这种情况的示例。
先感谢您。
解决方案
如果 x 和 y 具有相同的形状,您可以评估每对元素(每个数组一个)之间的加权平均值,然后计算它们的平均值。
import numpy as np
x = np.array([100,200,300])
y = np.array([1,2,3])
print(
np.mean(
np.average([x,y], weights=[1,100], axis=0)
)
)
或者对于通用数组,您可以使用加权和的定义:
import numpy as np
x = np.array([100,200,300])
y = np.array([1,2,3])
x_w = 1
y_w = 100
print(
(np.sum(x)*x_w + np.sum(y)*y_w) / (x.size*x_w + y.size*y_w)
)
推荐阅读
- alfresco - 通过传递多个业务键[processBusinessKey] 值来获取流程实例
- webpack - 如何添加appcache插件?
- java - 在流中的任何阶段失败时重试akka中的流
- xamarin.forms - Forms.context 已过时。从 2.5 版开始,上下文已过时,请改用本地上下文
- git - Git:减小`.git/lfs/`的大小
- json - 如何从 laravel 的一列中获取多个值
- sql-server - 在 SQL Server 中使用 DATEDIFF 计算工作时间
- graphql - 基于 Prisma 光标的分页
- ember.js - 我们可以在 Ember 中导出命名和默认助手吗
- java - 如何在服务器上使用 -Dlog4j.configuration=file:/path/to/log4j.properties 运行我的 flink 作业