How to add two sparse matrices or ndSparse matrices in MATLAB?
2 次查看(过去 30 天)
显示 更早的评论
I am aware that sparse matrices are most effciently worked with when they are created at once from a set of indices and values.
However, due to the size of my data, I am unable to store all indices and values at once, and am forced to batch my execution, so that a sparse matrix is built from a set of indices and values once in a while (say every 100th input file).
This introduces the problem of how to add two sparse matrices, which are not guaranteed to have the same dimension, as I need to accumulate the values (add them) if indices are identical.
I am currently using the ndSparse class from File Exchange, but would also be interested in an answer for MATLAB's built-in sparse function.
The main problem lies in making sure both sparse matrices have the same dimension. Is there any smart/efficient way to do this? Using padarray is not an option.
3 个评论
Ahmad Gad
2017-11-16
编辑:Ahmad Gad
2017-11-16
Hi Jakob,
I am having the same problem as you exactly described in paragraphs one and two. However, I don't know how efficient is to discretize your calculation for all indices. Could you tell me how you did this and was it efficient or not?
Thanks in advance.
回答(1 个)
Johannes Korsawe
2016-10-14
help sparse
fourth and fifth argument of sparse prescribe the dimensions. If you know them from the beginning of ayour code, you can define all matrices of the same size and add them regularly.
0 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!