У меня асимметричная матрица.
A B C D
A 0 0 1 0
B 1 0 0 1
C 0 0 0 0
D 1 1 1 0
Я пытаюсь переключить строки и столбцы, чтобы сделать их треугольными.
Нравиться:
C A D B
C 0 1 1 0
A 0 0 1 1
D 0 0 0 1
B 0 0 1 0
Кто-то дал несколько кодов, созданных VBA и используемых в Microsoft Excel. Согласно примечанию в этом коде, я нашел статью («Алгоритм 529: перестановки в блочную треугольную форму»), опубликованную в 1978 году и написанную на Фортране. Я также нашел статью (Реализация алгоритма Тарьяна для блочной триангуляции матрицы), в которой может быть описана эта концепция.
Я смотрю на numpy, но такой функции не нашел. Меня интересует, есть ли в некоторых пакетах готовый модуль для завершения этого процесса. Большое спасибо.