dok_array#
- class scipy.sparse.dok_array(arg1, shape=None, dtype=None, copy=False, *, maxprint=None)[原始碼]#
基於鍵的字典的稀疏陣列。
這是一種有效率的結構,用於以遞增方式建構稀疏陣列。
- 這可以通過幾種方式實例化
- dok_array(D)
其中 D 是一個 2-D ndarray
- dok_array(S)
與另一個稀疏陣列或矩陣 S (等效於 S.todok())
- dok_array((M,N), [dtype])
建立具有初始形狀 (M,N) 的陣列,dtype 是可選的,預設為 dtype=’d’
註解
稀疏陣列可用於算術運算:它們支援加法、減法、乘法、除法和矩陣冪。
允許有效率的 O(1) 單獨元素存取。
不允許重複項。
一旦建構完成,可以有效率地轉換為 coo_array。
範例
>>> import numpy as np >>> from scipy.sparse import dok_array >>> S = dok_array((5, 5), dtype=np.float32) >>> for i in range(5): ... for j in range(5): ... S[i, j] = i + j # Update element
方法
__len__
()傳回 len(self)。
asformat
(format[, copy])以傳遞的格式傳回此陣列/矩陣。
astype
(dtype[, casting, copy])將陣列/矩陣元素轉換為指定的類型。
clear
()conj
([copy])元素級複數共軛。
已棄用:傳回共軛轉置。
conjugate
([copy])元素級複數共軛。
copy
()傳回此陣列/矩陣的副本。
count_nonzero
([axis])非零條目的數量,等效於
diagonal
([k])傳回陣列/矩陣的第 k 條對角線。
dot
(other)普通的點積
fromkeys
(iterable[, value])建立一個新的字典,其鍵來自 iterable,值設定為 value。
get
(key[, default])這提供了具有類型檢查的 dict.get 方法功能
items
()keys
()maximum
(other)此陣列/矩陣與另一個陣列/矩陣之間的元素級最大值。
mean
([axis, dtype, out])計算沿指定軸的算術平均值。
minimum
(other)此陣列/矩陣與另一個陣列/矩陣之間的元素級最小值。
multiply
(other)另一個陣列/矩陣的逐點乘法。
nonzero
()陣列/矩陣的非零索引。
pop
(k[,d])如果找不到鍵,則傳回預設值 (如果給定);否則,引發 KeyError。
popitem
()移除並傳回 (鍵, 值) 對作為 2-tuple。
power
(n[, dtype])元素級冪。
reshape
(self, shape[, order, copy])為稀疏陣列/矩陣提供新的形狀,而不更改其資料。
resize
(*shape)就地將陣列/矩陣調整為
shape
給定的維度setdefault
(key[, default])如果鍵不在字典中,則插入具有預設值的鍵。
setdiag
(values[, 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() 方法,則執行:for k, v in E: D[k] = v 在任一情況下,接著執行:for k in F: D[k] = F[k]
values
()__getitem__
__mul__