Функция np.eye() возвращает двумерный массив с единицами по диагонали и нулями в другом месте с указанным размером в Python. Она возвращает массив, в котором все элементы равны нулю, кроме k-й диагонали, значения которой равны единице.
Диагональ может быть главной, верхней или нижней в зависимости от необязательного параметра k. Положительный k соответствует верхней диагонали, отрицательный k — нижней, а 0 k — главной диагонали. Если значение положительное, оно относится к верхней диагонали, а отрицательное значение представляет нижнюю диагональ.
Синтаксис
|
1 |
numpy.eye(N, M=None, k=0, dtype=<class 'float'>, order='C', *, like=None) |
Аргументы
- N — это количество строк, которые необходимо сгенерировать из функции. Это обязательный аргумент.
- M — это количество столбцов, которые необходимо сгенерировать. По умолчанию ему присвоено значение «None». Если присвоено None, то создается матрица X n. Значение, присвоенное n, будет присвоено M.
- K – это индекс диагонали. По умолчанию ему присвоено значение 0. Следовательно, диагонали, начинающейся с 0-го индекса, будет присвоено значение 1. Если значение положительное, то оно относится к верхней диагонали. Если значение меньше нуля, оно относится к нижней диагонали.
- Dtype — обозначает тип данных. По умолчанию он назначается как число с плавающей запятой. Следовательно, все значения, сгенерированные в массиве, будут принадлежать этому упомянутому типу данных.
- Order — имеет два значения, C и F. Если это C, он хранится в ряду. Если это F, то он хранится в основном столбце.
- Like — если стиль массива передается в подобном аргументе, массив будет сгенерирован только тогда, когда сгенерированный вывод будет подобен данному аргументу.
Программа для создания eye матрицы с помощью функции np.eye()
|
1 2 3 4 5 6 7 8 9 10 |
import numpy as np # Creating a 3 X 3 identical array using eye function mat = np.eye(3) # Printing the array print(mat) # Printing the shape of the array print(mat.shape) |
Выход
|
1 2 3 4 |
[[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]] (3, 3) |
Мы импортировали пакет numpy для работы с числовыми расчетами в этой программе. Затем мы создали идентичный массив 3 X 3, используя функцию np.eye(). Идентичная матрица — это такая матрица, в которой средняя диагональ массива равна 1, а все остальные элементы равны 0.
Следовательно, мы создали 2D-массив, используя метод numpy eye(), передав 3 в качестве аргумента N. Чтобы напечатать форму массива в Python, используйте свойство np.shape.
Передача аргумента order
|
1 2 3 4 5 6 7 8 9 10 |
import numpy as np # Creating a 3 X 3 identical matrix using eye function mat = np.eye(4, 5, 2, order='F') # Printing the array print(mat) # Printing the shape of the array print(mat.shape) |
Выход
|
1 2 3 4 5 |
[[0. 0. 1. 0. 0.] [0. 0. 0. 1. 0.] [0. 0. 0. 0. 1.] [0. 0. 0. 0. 0.]] (4, 5) |
В этой программе мы передали значение N как 4, а для M мы дали 5, а для k мы передали значение как 2. Затем в аргументе order мы использовали F.
