【问题标题】:Recursive matrix element addition for multidimensional array多维数组的递归矩阵元素加法
【发布时间】:2019-10-15 06:35:16
【问题描述】:

如果矩阵的大小是(3,4,4);

new_matrix = matrix[0] + matrix[1] + matrix[2]

如何对矩阵的每个元素进行逐元素加法。'

例子:

matrix = np.array([[[1, 2], [3, 4]], [[4, 5], [6, 7]], [[8, 9], [10, 11]]])

new_matrix = np.zeros(shape=(2, 2))

for i in range(matrix.shape[0]):
    new_matrix += matrix[i]

print(new_matrix)

回答: [[13, 16], [19, 22]]

问题: 没有for循环怎么办?

【问题讨论】:

    标签: python numpy addition


    【解决方案1】:

    您可以使用 numpy 中提供的 np.sum 函数。您可以指定要沿其执行加法的轴,否则它将给出矩阵中所有元素的总和。

    以你的为例,

    matrix = np.array([[[1, 2], [3, 4]], [[4, 5], [6, 7]], [[8, 9], [10, 11]]])
    print(np.sum(matrix,axis=0))
    

    输出是

    [[13 16]
     [19 22]]
    

    这是 np.sum 文档的链接:np.sum

    【讨论】:

      猜你喜欢
      • 2019-09-18
      • 2014-04-22
      • 1970-01-01
      • 2018-02-13
      • 1970-01-01
      • 2021-07-10
      • 2019-11-13
      • 1970-01-01
      • 2014-08-07
      相关资源
      最近更新 更多