Я хочу присвоить ноль матрице 2d numpy, где для каждой строки у нас есть столбец отсечки, после которого следует установить ноль.
Например, здесь у нас есть матрица A размером 4x5 с отсеченными столбцами [1,3,2,4]. Что я хочу сделать:
import numpy as np
np.random.seed(1)
A = np.random.rand(4, 5)
cutoff = np.array([1,3,2,4])
A[0, cutoff[0]:] = 0
A[1, cutoff[1]:] = 0
A[2, cutoff[2]:] = 0
A[3, cutoff[3]:] = 0
Я мог бы сделать это с индексами строк и столбцами np.repeat , но моя матрица настолько велика, что я не могу этого сделать. Есть ли эффективный способ сделать это?