Why am I unable to use the RESHAPE function to convert a sparse vector to a three-dimensional matrix in MATLAB?

7 views (last 30 days)
I create the following sparse vector:
A = sparse([1:24]);
Then I use the RESHAPE function to convert it to a 2-by-3-by-4 matrix:
B = reshape(A,2,3,4);
size(B)
However when I check the size of the result matrix, it is not what I am expecting:
ans =
2 12

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 27 Jun 2009
MATLAB only supports two-dimensional sparse matrices. Therefore, when given a sparse matrix, the RESHAPE function returns a matrix, the second dimension of which has a length that is the product of all specified dimensions higher than the first.

More Answers (0)

Categories

Find more on Sparse Matrices in Help Center and File Exchange

Products


Release

R14SP2

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!