numpy.eye()

Функция numpy.eye() создаёт двумерный массив с единицами на диагонали и нулями в остальных позициях. Часто применяется для построения единичной матрицы в линейной алгебре.

Сигнатура

numpy.eye(N, M=None, k=0, dtype=float, order='C', *, like=None)

Параметры

  • N — число строк.

  • M — число столбцов (по умолчанию равно N).

  • k — смещение диагонали: 0 — главная, положительные — выше, отрицательные — ниже.

  • dtype — тип элементов.

  • order — порядок размещения в памяти.

Возвращаемое значение

ndarray формы (N, M) с единицами на k-й диагонали и нулями в остальных позициях.

Примеры

Пример 1. Квадратная единичная матрица.

import numpy as np

print(np.eye(3))
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]

Пример 2. Прямоугольная матрица.

print(np.eye(2, 4))
[[1. 0. 0. 0.]
 [0. 1. 0. 0.]]

Пример 3. Смещение диагонали.

print(np.eye(4, k=1))
[[0. 1. 0. 0.]
 [0. 0. 1. 0.]
 [0. 0. 0. 1.]
 [0. 0. 0. 0.]]

Пример 4. Целый тип данных.

print(np.eye(3, dtype=int))
[[1 0 0]
 [0 1 0]
 [0 0 1]]

Пример 5. Проверка обратной матрицы.

A = np.array([[2.0, 1.0], [1.0, 3.0]])
inv = np.linalg.inv(A)
product = A @ inv
print(np.allclose(product, np.eye(2)))
True

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.