#python #arrays #3d #2d
#python #массивы #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]]]
a
является 2D массивом, содержащим числа.
b
— это 2D массив, содержащий утверждения True или False.
c
— это 3D массив, содержащий числа.
допустим, у c
есть 2 слоя 2D-массива, и я хотел бы добавлять a
с каждым слоем, c
пока b
значение True. Есть ли какой-либо способ сделать это без использования цикла для каждой ячейки в python?
ожидаемый результат
k = [[2 1] [4 3]]
Комментарии:
1. Пожалуйста, опубликуйте, какой код вы внедрили, чтобы его можно было оптимизировать для эффективной работы.
Ответ №1:
Спасибо за ответы. Я думаю, что нашел ответ, который я хочу.
k = np.where(b,a c.sum(axis = 1),a 0).