Я пытаюсь «объединить» два вектора, содержащие значения true и false.
Если у меня есть вектор 4 (строки) и второй вектор из 3 (столбцы, я хочу создать матрицу 4x3 где значения представляют собой «ИЛИ» между 1-м и 2-м векторными значениями.
мой код получает ниже, получает желаемый вывод, но с ужасным временем выполнения:
import numpy as np
import time
np_calc_rows = np.random.choice(a=[False, True], size=(12000,))
np_calc_cols = np.random.choice(a=[False, True], size=(1000,))
np_output = np.empty((12000,1000),dtype=bool)
start = time.time()
for i in range(0,len(np_calc_rows)):
for j in range(0,len(np_calc_cols)):
np_output[i,j] = np_calc_rows[i] or np_calc_cols[j]
print('runtime (ms): ' + str(time.time()-start))
Любые попытки Добиться желаемого результата с помощью векторных / матричных операций не удалось, как я могу добиться этого эффективным способом без двух циклов?