繁体   English   中英

如何在python中添加两个2D数组相同索引的元素?

[英]How can I add two elements of same indices of two 2D arrays in python?

我尝试用zip函数和循环来解决这个问题:

mat_C=[[] for i in range(NO_OF_ROWS_C)]
for i in range(NO_OF_ROWS_C):
    for j in range(NO_OF_COLUMNS_C):
        mat_C=[a+b for (a,b) in zip(mat_A,mat_B)]
for i in range(NO_OF_ROWS_C):
    for j in range(NO_OF_COLUMNS_C):
        print(mat_C[i][j])

NumPy对于这种事情非常有用。 特别是,NumPy阵列的添加是按元素执行的。

mat_A = np.asarray(mat_A)
mat_B = np.asarray(mat_B)
mat_C = mat_A + mat_B
print(mat_C)

没有numpy,

mat_C = [[a+b for a,b in zip(row_A, row_B)] for row_A, row_B in zip(mat_A, mat_B)]
>>> A = [[1, 2], [3, 4]]
>>> B = [[5, 6], [7, 8]]
>>> [[c+d for c, d in zip(a, b)] for a, b in zip(A,B)]
[[6, 8], [10, 12]]

numpy

>>> import numpy as np
>>> A = np.array([[1, 2], [3, 4]])
>>> B = np.array([[5, 6], [7, 8]])
>>> A + B
array([[ 6,  8],
       [10, 12]])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM