Python scipy.sparse.csr_marix到Matlab等效程序



我正在读一篇论文,但他们的代码是python,所以我决定将其转换为Matlab代码以适应我的工作。然而,有一小段代码我不理解。

S = scipy.sparse.csr_matrix((D, (R, C)), shape=(r, old_dim))
MSt = scipy.sparse.csr_matrix.dot(M, S.T)

有人能解释一下他们想在这里做什么吗?上面的线是什么意思?注意:变量D、R和C是从导出的数组/矩阵

C = np.arange(old_dim)
R = np.random.random_integers(r, size=old_dim) - 1
D = np.random.randint(2, size=old_dim) * 2 - 1
% also r and old_dim are dimension sizes e.g 5 or 10

我理解这部分。我只是不知道什么是稀疏的.csr_matrix(D,(R,C(,以及它在Matlab中的等价物。

D C和R代表数据、列和行。它通过传递非零元素来创建稀疏矩阵。这与MATLAB语法S = sparse(i,j,v)非常接近

  • i是行索引,对应R
  • j是列索引,对应于C
  • v是值,对应于D

相关内容

  • 没有找到相关文章

最新更新