似乎沒有scipy.sparse中的方法,它給出了最小的稀疏矩陣。特別是,我尋求最低的專欄。最小的一個稀疏矩陣?
沒有方法出現在文檔中,而numpy最小值不適用。如果X
是一個稀疏矩陣,則X.min()
也會引發錯誤:*** AttributeError: 'module' object has no attribute 'min'
。
這肯定是人們使用的東西。這是如何完成的?
似乎沒有scipy.sparse中的方法,它給出了最小的稀疏矩陣。特別是,我尋求最低的專欄。最小的一個稀疏矩陣?
沒有方法出現在文檔中,而numpy最小值不適用。如果X
是一個稀疏矩陣,則X.min()
也會引發錯誤:*** AttributeError: 'module' object has no attribute 'min'
。
這肯定是人們使用的東西。這是如何完成的?
與CSR/CSC矩陣,使用
def min_sparse(X):
if len(X.data) == 0:
return 0
m = X.data.min()
return m if X.getnnz() == X.size else min(m, 0)
要做到這一點每行或列,您可以map
這種過度X.getrow(i) for i in X.shape[0]
或X.shape[1]
。
但你說得對,這應該是一種方法。
大概你的意思是「最小非零元素」。畢竟,稀疏矩陣隱含地包含大部分零。 – talonmies
不 - 我的意思是「最低」。稀疏矩陣可以有負項目。萊斯曼的回答給出了這一點。 – gabe
稀疏矩陣中的否定條目也是非零值。 – talonmies