Python 如何在为True时将2D添加到3D的每一层
我有3个数组Python 如何在为True时将2D添加到3D的每一层,python,arrays,3d,2d,Python,Arrays,3d,2d,我有3个数组 a = [[0 1] [2 3]] b = [[True False] [True False]] c = [[[1 1] [1 1] [1 1] [1 1]][[1 1] [1 1] [1 1] [1 1]]] 是包含数字的二维数组。 b是包含正确或错误语句的2D数组。 c是包含数字的3D数组 假设c有两层二维数组,我想在c的每一层中添加a,只要b为真。在python中,有没有任何方法不必对每个单元格使用循环就可以做到这一点 预期结果 k = [[2 1] [4 3]] 谢谢
a = [[0 1] [2 3]]
b = [[True False] [True False]]
c = [[[1 1] [1 1] [1 1] [1 1]][[1 1] [1 1] [1 1] [1 1]]]
是包含数字的二维数组。
b
是包含正确或错误语句的2D数组。
c
是包含数字的3D数组
假设c
有两层二维数组,我想在c
的每一层中添加a
,只要b
为真。在python中,有没有任何方法不必对每个单元格使用循环就可以做到这一点
预期结果
k = [[2 1] [4 3]]
谢谢你的回答。我想我找到了我想要的答案
k = np.where(b,a+c.sum(axis = 1),a+0).
Plz发布您已实现的代码,以便对其进行优化以有效工作。