scipy.sparse.dok_matrix

class scipy.sparse.dok_matrix(arg1, shape=None, dtype=None, copy=False)[源代码]

基于稀疏矩阵的键字典。

这是一种用于增量构造稀疏矩阵的有效结构。

这可以通过几种方式实例化:
DOK_矩阵(D)

具有稠密的矩阵,D

DOK_矩阵(S)

具有稀疏矩阵S

DOK_矩阵((M,N), [数据类型] )

使用初始形状(M,N)创建矩阵dtype是可选的,默认为dtype=‘d’

注意事项

稀疏矩阵可用于算术运算:它们支持加、减、乘、除和矩阵幂。

允许对单个元素进行高效的O(1)访问。不允许重复。一旦构造就可以有效地转换成COO_矩阵。

示例

>>> import numpy as np
>>> from scipy.sparse import dok_matrix
>>> S = dok_matrix((5, 5), dtype=np.float32)
>>> for i in range(5):
...     for j in range(5):
...         S[i, j] = i + j    # Update element
属性
dtype数据类型

矩阵的数据类型

shape2元组

获得矩阵的形状。

ndim集成

维数(该值始终为2)

nnz

存储值的数量,包括显式零。

方法:

__len__ \()

返回镜头(自身)。

__mul__ \(其他)

解释其他并调用以下任一

asformat \(格式[, copy] )

以传递的格式返回此矩阵。

asfptype \()

将矩阵向上转换为浮点格式(如有必要)

astype \(dtype[, casting, copy] )

将矩阵元素强制转换为指定类型。

clear \()

conj \([copy] )

元素复数共轭。

conjtransp \()

返回共轭转置。

conjugate \([copy] )

元素复数共轭。

copy \()

返回此矩阵的副本。

count_nonzero \()

非零条目数,相当于

diagonal \([k] )

返回矩阵的第k条对角线。

dot \(其他)

普通点积

fromkeys \(可迭代[, value] )

创建一个新字典,其中关键字来自可迭代,值设置为Value。

get \(密钥[, default] )

这重写了dic.get方法,提供了类型检查,但在其他方面提供了等效的功能。

getH \()

返回此矩阵的厄米转置。

get_shape \()

获得矩阵的形状。

getcol \(J)

以(M X 1)稀疏矩阵(列向量)的形式返回矩阵第j列的副本。

getformat \()

矩阵表示形式为字符串的格式。

getmaxprint \()

打印时显示的最大元素数。

getnnz \([axis] )

存储值的数量,包括显式零。

getrow \(i)

以(1 X N)稀疏矩阵(行向量)的形式返回矩阵第i行的副本。

items \()

keys \()

maximum \(其他)

此矩阵与另一个矩阵之间的元素最大值。

mean \([axis, dtype, out] )

计算沿指定轴的算术平均值。

minimum \(其他)

此矩阵与另一个矩阵之间的元素最小值。

multiply \(其他)

另一个矩阵的逐点乘法

nonzero \()

非零折射率

pop \(密钥[, default] )

如果未找到密钥,则返回默认值(如果给定),否则引发KeyError

popitem \(/)

删除(键、值)对并将其作为2元组返回。

power \(n[, dtype] )

以元素为基础的力量。

reshape \(自身,形状[, order, copy] )

在不更改稀疏矩阵数据的情况下为其赋予新形状。

resize \(*形状)

就地调整矩阵大小至给定的尺寸 shape

set_shape \(形状)

看见 reshape

setdefault \(密钥[, default] )

如果Key不在字典中,则插入值为Default的Key。

setdiag \(值[, k] )

设置阵列的对角或非对角元素。

sum \([axis, dtype, out] )

对给定轴上的矩阵元素求和。

toarray \([order, out] )

返回此矩阵的密集ndarray表示。

tobsr \([blocksize, copy] )

将此矩阵转换为挡路稀疏行格式。

tocoo \([copy] )

将此矩阵转换为坐标格式。

tocsc \([copy] )

将此矩阵转换为压缩的稀疏列格式。

tocsr \([copy] )

将此矩阵转换为压缩的稀疏行格式。

todense \([order, out] )

返回此矩阵的密集矩阵表示形式。

todia \([copy] )

将此矩阵转换为稀疏对角线格式。

todok \([copy] )

将此矩阵转换为键字典格式。

tolil \([copy] )

将此矩阵转换为列表列表格式。

trace \([offset] )

返回稀疏矩阵沿对角线的总和。

transpose \([axes, copy] )

反转稀疏矩阵的维数。

update \([E, ] ** F)

如果E存在并且具有.keys()方法,则执行以下操作:for k in E:d [k] =E [k] 如果E存在并且缺少.keys()方法,则会这样做:对于k,E:d中的v [k] =v在任何一种情况下,后跟:表示F:D中的k [k] =F [k]

values \()

__getitem__