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?