Numery k-ty indeksów diagonalnych

Chciałbym wykonać arytmetykę z k-tą przekątną numpy.array. Potrzebuję tych wskaźników. Na przykład coś takiego:

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

Niestety, diag_indices zwraca tylko indeksy zawierające główną przekątną, więc w tej chwili robię:

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

Ale to nie wydaje się tak miłe lub solidne. :-)

Czy jest jakiś sposób, aby uzyskać indeksy dla innej niż główna przekątna?

questionAnswers(4)

yourAnswerToTheQuestion