np.eye:创建对角线上有 "一 "和 "零 "的二维阵列

1,086 阅读2分钟

np.eye- Create 2D Array with Ones on the Diagonal and Zeros

np.eye()函数返回一个二维数组 ,对角线为1,其他地方0,大小在Python中指定。它返回一个所有项都等于0的数组,除了第k条对角线的值等于1。

对角线可以是对角线、对角线或对角线,这取决于可选的参数 k。正k表示上对角线,负k 表示下对角线, 0k表示主对角线。 如果数值是正的,它指的是上对角线,而负值代表下对角线。

语法

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

参数

N - 它是需要从函数中生成的行数。这是一个必要的参数。

M- 是指需要从函数中生成的列的数量。默认情况下,它被指定为。如果分配了None,那么它就会创建一个X n矩阵。分配给n的值将被分配给M。

K- 它是对角线的索引。默认情况下,它被分配为0。因此,从第0个 索引开始的对角线 将被分配为1,如果这个值是正的,那么它指的是上对角线。如果该值小于0,它指的是下对角线。

Dtype- 它代表了数据类型。默认情况下,它被分配为浮点。因此,在数组中生成的所有值都是这个数据类型。

Order - 它有两个值,C和F。如果它是C,它被存储在行主位。如果是F,那么它就以列为主存储。

Like- 如果在like参数中传递了一个数组样式,那么只有当生成的输出与给定参数一样时,才会生成数组。

使用np.eye()函数创建eye矩阵的程序

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. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]

(3, 3)

我们在这个程序中导入了一个numpy包,用于处理数值计算。然后,我们使用np.eye() 函数创建了一个3X3的相同阵列。一个相同的矩阵是一种矩阵,其中数组的中间对角线是1,其他元素都是0。

因此,我们使用numpy eye()方法创建了一个二维数组,N参数传递为3。要在Python中打印一个数组的形状,可以使用np.shape属性。

传递顺序参数

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)

输出

[[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。 然后,按照参数的顺序,我们用了F。

本教程到此结束。