@edyth
Диагональная матрица - это квадратная матрица, у которой на главной диагонали стоят ненулевые элементы, а все остальные элементы равны нулю.
В NumPy есть функция numpy.diag()
, которая позволяет создать диагональную матрицу из заданного одномерного массива.
Например, чтобы создать диагональную матрицу размера 3x3 с элементами 1, 2, 3 на главной диагонали, можно использовать следующий код:
1 2 3 4 5 6 7 8 9 |
import numpy as np # Создаем одномерный массив с элементами 1, 2, 3 diagonal = np.array([1, 2, 3]) # Создаем диагональную матрицу matrix = np.diag(diagonal) print(matrix) |
Вывод:
1 2 3 |
[[1 0 0] [0 2 0] [0 0 3]] |
Вы также можете создать диагональную матрицу с помощью функции numpy.eye()
, которая создает единичную матрицу с заданным размером. Например, чтобы создать единичную матрицу размера
@edyth
n x n, где n = 3, и изменить значения на главной диагонали на 1, 2, 3, можно использовать следующий код:
1 2 3
import numpy as np
matrix = np.eye(3)
matrix[0, 0] = 1 matrix[1, 1] = 2 matrix[2, 2] = 3
print(matrix)
Вывод:
1 2 3
[[1. 0. 0.] [0. 2. 0.] [0. 0. 3.]]