🔍 Как создать диагональную матрицу с помощью NumPy?
Для создания диагональной матрицы в NumPy, вы можете использовать функцию numpy.diag
. Эта функция принимает одномерный массив или список в качестве входных данных и возвращает диагональную матрицу.
Вот пример, показывающий, как создать диагональную матрицу в NumPy:
import numpy as np
arr = np.array([1, 2, 3, 4]) # Входной массив
diagonal_matrix = np.diag(arr) # Создание диагональной матрицы
print(diagonal_matrix)
Этот код создаст диагональную матрицу с входными значениями [1, 2, 3, 4]
:
[[1 0 0 0]
[0 2 0 0]
[0 0 3 0]
[0 0 0 4]]
Таким образом, вы можете использовать функцию numpy.diag
для создания диагональной матрицы в NumPy.
Детальный ответ
Как создать диагональную матрицу numpy
Диагональная матрица - это квадратная матрица, у которой все элементы, кроме элементов на главной диагонали, равны нулю. Главная диагональ - это набор элементов, идущих от верхнего левого угла матрицы до нижнего правого угла. Библиотека NumPy предоставляет удобный способ создания и манипулирования диагональными матрицами.
Для создания диагональной матрицы в NumPy вы можете использовать функцию numpy.diag(). Эта функция принимает один аргумент - одномерный массив, содержащий элементы, которые будут размещены на главной диагонали матрицы. Остальные элементы матрицы будут заполнены нулями. Давайте рассмотрим пример:
import numpy as np
diagonal_matrix = np.diag([1, 2, 3, 4])
print(diagonal_matrix)
В этом примере мы создаем диагональную матрицу с элементами [1, 2, 3, 4]. Функция np.diag() возвращает следующую матрицу:
[[1 0 0 0] [0 2 0 0] [0 0 3 0] [0 0 0 4]]
Каждый элемент массива [1, 2, 3, 4] будет размещен на главной диагонали матрицы, а остальные элементы будут равны нулю.
Если вы хотите создать диагональную матрицу с определенными значениями на диагонали, а нули в остальных местах, вы можете использовать функцию numpy.eye(). Эта функция принимает два аргумента - число строк и столбцов в матрице и необязательный аргумент k, который определяет смещение главной диагонали относительно центра. Если k равно нулю (по умолчанию), главная диагональ будет находиться в середине матрицы. Давайте рассмотрим пример:
import numpy as np
diagonal_matrix = np.eye(5, k=1)
print(diagonal_matrix)
В этом примере мы создаем диагональную матрицу размером 5x5 с главной диагональю, смещенной вправо на одну позицию. Функция np.eye() возвращает следующую матрицу:
[[0. 1. 0. 0. 0.] [0. 0. 1. 0. 0.] [0. 0. 0. 1. 0.] [0. 0. 0. 0. 1.] [0. 0. 0. 0. 0.]]
Значение 1 перемещается на главную диагональ, смещенную вправо, а остальные элементы равны нулю.
Теперь у вас есть инструменты для создания диагональных матриц в NumPy. Используйте их смело в своих проектах!