What is the name of the operation X(:)

36 views (last 30 days)
Björn
Björn on 20 Aug 2014
Edited: Matt J on 20 Aug 2014
I came across some code at work where they use X(:). It appears that this command rearranges the matrix. If I have a matrix X of size (M, N), then X(:) is of size (M*N,1).
What is the name of this operation? What can I search for?
I'm curious to read about it. One thing I want to check is if I can find an easy way to get the (M,N)-sized matrix back.
Thanks!

Accepted Answer

Guillaume
Guillaume on 20 Aug 2014
  2 Comments
Guillaume
Guillaume on 20 Aug 2014
Note that if you want to get the original matrix back, reshape is the function:
reshape(X(:), M, N)

Sign in to comment.

More Answers (1)

Matt J
Matt J on 20 Aug 2014
Edited: Matt J on 20 Aug 2014
What is the name of this operation? What can I search for?
As it happens, the name of the operation and where you can read about it are two different things. Although X(:) is described under "doc colon", it is really a subsref operation,
>> X=rand(5,4);
>> S.type='()'; S. subs={':'};
>> isequal(X(:), subsref(X,S) )
ans =
1

Community Treasure Hunt

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

Start Hunting!