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

7 vues (au cours des 30 derniers jours)
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

Réponse acceptée

MathWorks Support Team
MathWorks Support Team le 27 Juin 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.

Plus de réponses (0)

Catégories

En savoir plus sur Sparse Matrices dans Help Center et File Exchange

Produits


Version

R14SP2

Community Treasure Hunt

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

Start Hunting!

Translated by