NumPy k-й диагональный индекс

Я бы хотел сделать арифметику с k-й диагональю numpy.array. Мне нужны эти показатели. Например, что-то вроде:

>>> a = numpy.eye(2)
>>> a[numpy.diag_indices(a, k=-1)] = 5
>>> a
array([[ 1.,  0.],
       [ 5.,  1.]])

К сожалению, diag_indices возвращает только индексы, составляющие основную диагональ, поэтому в данный момент я делаю:

a += numpy.diag([5], -1)

Но это не кажется таким хорошим или крепким. : -)

Есть ли в numpy способ получить индексы, отличные от главной диагонали?

Ответы на вопрос(4)

Ваш ответ на вопрос