当有重复时,稀疏到密集矩阵会降低其维度

Sparse to Dense Matrix reduces its dimension when there are repetitions

我有一组索引,我想将它们转换为编码。为了这样做:

i = [2, 1, 3, 4]
s = sparse(i, 1:lenght(i), 1)
s = full(s);

这按预期工作正常,但当数组 i = [2, 1, 3, 3] 时。 full 函数给出了一个 3 x 4 矩阵而不是 4 x 4。Julia 认为最后一行是不必要的并删除了它,对于我来说,不是。

当索引array i中有重复时,是否可以使用sparsefull创建方阵?

B.R.

只需提供您想要的维度作为附加参数,例如:

s = sparse(i, 1:length(i), 1, 4, 4)

详细信息在 sparse 的帮助中进行了说明。