稀疏矩阵存储空间

时间:2012-12-02 22:38:03

标签: matlab matrix sparse-matrix

我需要以双数量的形式获得稀疏矩阵的存储大小。我需要在运行时获取这些信息。

2 个答案:

答案 0 :(得分:2)

您可以使用命令whos来获取变量使用的空间。

http://www.mathworks.fr/fr/help/matlab/ref/whos.html

whos var_name

info=whos('var_name');

答案 1 :(得分:0)

存储非零元素及其行索引,所以

nnz(x);

是一个很好的近似值,因为它返回number of nonzero elements

如果您的稀疏矩阵意外变大,您可以检查nnz以跟踪可能导致覆盖大量零元素的错误。

因此,使用

也可以测量使用稀疏矩阵的有效性
s=size(m_sparse);
effectiveness = 1 - nnz(x)/(s(1)*s(2))