A = sparse(10, 10);
b = [2, 2; 4, 3; 5, 4]
b =
2 2
4 3
5 4
我想让A成为:
A =
(2, 2) 1
(4, 3) 1
(5, 4) 1
似乎我的问题是我得到了:
A(b(:,1), b(:, 2)) = 1
A =
(2, 2) 1
(4, 2) 1
(5, 2) 1
(2, 3) 1
(4, 3) 1
(5, 3) 1
(2, 4) 1
(4, 4) 1
(5, 4) 1
我的问题是我正在分配而不是10
>>>> 1134890
而不是让b
由3行组成,它由〜3M
行组成。代码崩溃了。
内存不足。键入HELP MEMORY以获取选项。
据我所知,我的矩阵构建错误,因此会添加更多的点并导致这种情况。
如何正确实现所需的输出?谢谢!
修改
b
表示我正在使用以下内容从内存中读取的文本文件:importdata(pathToFile)
。我可以看到b
正在构建中。
答案 0 :(得分:4)
你只是错误填写你的矩阵。
使用
填充并创建它A
如果您无法避免预先分配index=sub2ind([10,10],b(:,1),b(:,2));
A(index)=1;
(老实说,请不要这样做),那么您可以通过以下方式填写:
.leaflet-control-layers-overlays input[type='checkbox'] {
display: block !important;
}