У меня есть массив Numpy, и я хотел бы получить его перевернутую диагональ ...
>>> import numpy as np
>>> arr = np.eye(6, dtype=int)
>>> arr
... array([[1, 0, 0, 0, 0, 0],
[0, 1, 0, 0, 0, 0],
[0, 0, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 0],
[0, 0, 0, 0, 1, 0],
[0, 0, 0, 0, 0, 1]])
Я знаю, что для получения диагонали я могу сделать это:
>>> arr.diagonal()
... array([1, 1, 1, 1, 1, 1])
Но я бы хотел получить антидиагональность.
>>> flipped_arr = np.fliplr(arr)
>>> flipped_arr
... array([[0, 0, 0, 0, 0, 1],
[0, 0, 0, 0, 1, 0],
[0, 0, 0, 1, 0, 0],
[0, 0, 1, 0, 0, 0],
[0, 1, 0, 0, 0, 0],
[1, 0, 0, 0, 0, 0]])
Вот что происходит, когда я пытаюсь получить диагональ flipped_arr
:
>>> flipped_arr.diagonal()
... array([0, 0, 0, 0, 0, 0])
Есть лиспособ решить эту проблему?