scipy.sparse.

eye#

scipy.sparse.eye(m, n=None, k=0, dtype=<class 'float'>, format=None)[源]#

返回一个指定形状的稀疏矩阵,其第 k 个对角线元素为 1,其余元素为 0。

返回一个 (m x n) 的稀疏矩阵,其中第 k 个对角线上的所有元素都是 1,其他所有元素都是 0。

警告

此函数返回的是稀疏矩阵,而非稀疏数组。建议使用 eye_array 来利用稀疏数组的功能。

参数:
mint

矩阵的行数。

nint, 可选

列数。默认值:m

kint, 可选

放置 1 的对角线。默认值:0(主对角线)。

dtypedtype, 可选

矩阵的数据类型。

formatstr, 可选

结果的稀疏格式,例如 format=”csr” 等。

返回:
new_matrix稀疏矩阵

指定形状的稀疏矩阵,其第 k 个对角线元素为 1,其余元素为 0。

另请参阅

eye_array

指定形状的稀疏数组,其特定对角线元素为 1。

示例

>>> import numpy as np
>>> import scipy as sp
>>> sp.sparse.eye(3).toarray()
array([[ 1.,  0.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  0.,  1.]])
>>> sp.sparse.eye(3, dtype=np.int8)
<DIAgonal sparse matrix of dtype 'int8'
    with 3 stored elements (1 diagonals) and shape (3, 3)>