我正在try 将两个Numy数组的特定元素相加.

例如,考虑这两个数组:

f1 = np.array([
      [[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]],
      [[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]],
      [[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]]
     ])

f2 = np.array([
      [[1., 1., 1.], [1., 1., 1.], [1., 1., 1.]],
      [[1., 1., 1.], [1., 1., 1.], [1., 1., 1.]],
      [[1., 1., 1.], [1., 1., 1.], [1., 1., 1.]]
     ])

我想创建一个新数组,如下所示:

[[0.5, 0.5, 0.5],
 [0.5, 0.5, 0.5],
 [0.5, 0.5, 0.5]]

对于f1和f2中由三个值组成的每个数组,我要执行的操作类似于(f1[r][c][0]+f2[r][c][0])/2.

我知道np.add(f1,f2)/2的结果与我想要的很接近,只是它将对数组的每个元素执行加法和zoom 操作,而不是只对每个长度为3的子数组中的第一个元素执行加法和zoom 操作.最好的方法是将每个原始数组分解为三个独立的数组,从而允许我使用np.add(f1,f2)/2吗?

抱歉,如果这是复制品,我似乎找不到任何关于执行这样的操作的东西.

推荐答案

您可以在计算总和之前为所需位置编制索引:

(f1[...,0]+f2[...,0])/2

输出:

array([[0.5, 0.5, 0.5],
       [0.5, 0.5, 0.5],
       [0.5, 0.5, 0.5]])

Python相关问答推荐

显示包含周号的日历

在非常大的文本文件(50+GB)中搜索文本

为什么自定义pytree aux_data对于jnp.数组来说在.jit()之后跟踪,而对于np.数组来说则不是?

使用pandas MultiIndex进行不连续 Select

如何判断. text文件中的某个字符,然后读取该行

在Python中根据id填写年份系列

如何在Python中按组应用简单的线性回归?

使用from_pandas将GeDataFrame转换为polars失败,ArrowType错误:未传递numpy. dype对象

将HLS纳入媒体包

根据不同列的值在收件箱中移动数据

Deliveryter Notebook -无法在for循环中更新matplotlib情节(保留之前的情节),也无法使用动画子功能对情节进行动画

滚动和,句号来自Pandas列

scikit-learn导入无法导入名称METRIC_MAPPING64'

如何列举Pandigital Prime Set

将pandas Dataframe转换为3D numpy矩阵

当从Docker的--env-file参数读取Python中的环境变量时,每个\n都会添加一个\'.如何没有额外的?

我对我应该做什么以及我如何做感到困惑'

driver. find_element无法通过class_name找到元素'""

将JSON对象转换为Dataframe

joblib:无法从父目录的另一个子文件夹加载转储模型