Допустим, у меня есть следующая матрица 6x6 a и матрица 2x2 b:
a = np.array([[1, 1, 1, 0, 0, 0],
[1, 0, 1, 0, 1, 0],
[1, 0, 0, 0, 0, 1],
[1, 1, 1, 1, 1, 0],
[0, 0, 0, 0, 0, 0],
[1, 0, 0, 1, 1, 1]])
b = np.array([[0, 1],
[0, 0]])
Я хочу создать таблицу истинности, в которой 2d матрица меньшего массива существует внутри большей, но выбирая только верхний левый индекс
Ожидаемый результат:
>>> array([[False, False, False, False, False, False],
[False, True, False, True, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False],
[False, False, False, False, False, False]])
Полагаю, я мог бы построить массивную l oop и оценить с помощью np.roll (), но я надеюсь, что есть элегантное решение вместо этого?