В линейной алгебре определитель является скалярным значением, которое может быть вычислено из элементов квадратной матрицы и кодирует определенные свойства линейного преобразования, описываемого матрицей.
Для вычисления определителя необходимо вырезать некоторые строки или столбцы матриц.
например, матрица A
A = np.array([[1,1],[2,2],[0,0]])
A
array([[1, 1],
[2, 2],
[0, 0]])
нужно вырезать последний ряд
B = A[:2]
B
array([[1, 1],
[2, 2]])
тогда доступна операция определителя.
np.linalg.det(B)
0.0
то, что нужно вырезать в другой матрице, это столбец, а не строка
C = A.T
C
array([[1, 2, 0],
[1, 2, 0]])
Итак, вырезание строки или столбца не определено, есть ли способ разумно удалять строки нулей, чтобы получить квадратную матрицу в python?