【发布时间】:2012-09-13 09:43:50
【问题描述】:
我在这里做错了什么?我想使用 Colt 将两个稀疏矩阵按元素相乘。这是我尝试这样做的一个示例:
DoubleMatrix2D A = new SparseDoubleMatrix2D(2, 2);
A.set(0, 0, 2.0);
DoubleMatrix2D B = new SparseDoubleMatrix2D(2, 2);
B.set(0, 0, 3.0);
A.assign(B, Functions.mult);
我得到的不是左上角元素为 6 的矩阵的预期结果:
2 x 2 matrix
18 0
0 0
将 A 更改为 DenseDoubleMatrix2D 会产生正确的结果。将 B 更改为 DenseDoubleMatrix2D 不会更改结果。无论我使用的是 SparseDoubleMatrix1D 还是 DenseDoubleMatrix1D,以这种方式将两个向量逐元素相乘总是会产生正确的结果。
【问题讨论】:
标签: java matrix sparse-matrix colt