簡體   English   中英

scipy.sparse.csr_matrix的最大值

[英]max of a scipy.sparse.csr_matrix

我正在嘗試在scipy.sparse矩陣中找到最大值。 這里的文檔說有一個.max方法。 奇怪的是,這對我不起作用:

>>> import scipy.sparse as sps 
>>> a = sps.csr_matrix((3,3))
>>> a[0,0] = 1
>>> a.max()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File     "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/scipy/sparse/base.py", line 393, in __getattr__
raise AttributeError(attr + " not found")
AttributeError: max not found

知道為什么會這樣嗎?

(我正在使用scipy版本0.11.0)

scipy docs網站上的一些考古表明,該方法已在scipy 13.0中引入。

如果您不想升級,則可以使用a.data.max()稀疏矩陣的非零條目的a.data.max()

如果還希望同時考慮零,這就是.max()方法的最大值,則執行以下操作:

m = a.data.max()
if m < 0 and a.nnz < a.shape[0]*a.shape[1]:
    m = 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM