scipy.sparse.
identity#
- scipy.sparse.identity(n, dtype='d', format=None)[源代码]#
稀疏格式的单位矩阵。
返回一个形状为
(n, n)的单位矩阵,使用指定的稀疏格式和数据类型 (dtype)。该函数与eye_array的区别在于它只能生成主对角线上全为 1 的方阵。因此,它是乘法单位元。而eye_array允许生成矩形矩阵,并且对角线可以偏离主对角线。警告
此函数返回一个稀疏矩阵(sparse matrix)——而非稀疏数组(sparse array)。建议使用
eye_array以利用稀疏数组的相关功能。- 参数:
- nint
单位矩阵的形状。
- dtypedtype,可选
矩阵的数据类型
- formatstr, optional
结果的稀疏格式,例如 format=”csr” 等。
- 返回:
- new_matrix稀疏矩阵
一个主对角线上为 1,其余位置为 0 的方形稀疏矩阵。
示例
>>> import scipy as sp >>> sp.sparse.identity(3).toarray() array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1.]]) >>> sp.sparse.identity(3, dtype='int8', format='dia') <DIAgonal sparse matrix of dtype 'int8' with 3 stored elements (1 diagonals) and shape (3, 3)> >>> sp.sparse.eye_array(3, dtype='int8', format='dia') <DIAgonal sparse array of dtype 'int8' with 3 stored elements (1 diagonals) and shape (3, 3)>