繁体   English   中英

稀疏三元组到稀疏矩阵Matlab

[英]sparse triplet to sparse matrix matlab

我可以使用什么命令在MATLAB中将稀疏三元组转换为稀疏矩阵? 我一直在尝试这样的方法: B=st_to_msm(A) ,其中A是我从“ .dat”文件中读取的稀疏三元组,而B只是一些变量。

但是,它对我不起作用。 我想知道如何解决它,或者是否还有其他命令可以进行转换。

MATLAB仅具有2D稀疏矩阵,因此3D寻址不适用于稀疏矩阵。

您可能需要在MATLAB Central File Exchange中检查N维稀疏数组

st_to_msm的代码是http://people.sc.fsu.edu/~jburkardt/m_src/st_to_msm/st_to_msm.m

  [ nrow, ncol, nnzero ] = st_header_read ( input_file );
  [ row, col, a ] = st_data_read ( input_file, nrow, ncol, nnzero );

  base0 = 0;
  base1 = 1;
  row = st_rebase ( base0, base1, nnzero, row );
  col = st_rebase ( base0, base1, nnzero, col );
  b = sparse ( row, col, a, nrow, ncol, nnzero );

换句话说,它从文件中读取尺寸和3个向量,并将它们用作sparse函数的参数。 我怀疑您的A由那3个向量组成, rowcola 有关更多详细信息,请参阅文档以获取sparse文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM