how to convert 2D matrix to 1D

685 visualizaciones (últimos 30 días)
Anfal
Anfal el 13 de Dic. de 2014
Editada: AIJAZ BHAT el 2 de Nov. de 2020
i want to convert 2D array with size 83*6580 to 1D array , any help ?

Respuestas (2)

Star Strider
Star Strider el 13 de Dic. de 2014
If you just want to make a vector out of it, use the ‘(:)’ notation:
A = rand(83,6580);
V = A(:);
‘V’ is a (546140x1) double.
  3 comentarios
Stephen23
Stephen23 el 14 de Feb. de 2018
"To make V as 1D array"
Unlike some languages MATLAB does not have any concept of 1D arrays: all arrays have atleast 2 explicit dimensions and infinite implicit trailing singleton dimensions. Because the first dimension is the row dimension the most "basic" kind of vector is actually a column vector.
AIJAZ BHAT
AIJAZ BHAT el 2 de Nov. de 2020
Editada: AIJAZ BHAT el 2 de Nov. de 2020
Alright I also want to add a precaution here while using it, It operates in column wise concatenation.

Iniciar sesión para comentar.


अंबरीश प्रशांत चांदूरकर Ambarish Prashant Chandurkar
To Convert a 2D Matrix into a 1D Array( i.e a row vector), such that row vector is formed by concatenating consecutive rows of the 2D Matrix, use the following Code :
OneDArray = reshape(TwoDArray',[1 size(TwoDArray,1)*size(TwoDArray,2)]);
  2 comentarios
Tyler David MacLean
Tyler David MacLean el 6 de Oct. de 2020
I dig the matrix math here didnt even thing of doing it like this.
Stephen23
Stephen23 el 6 de Oct. de 2020
Simpler:
OneDArray = reshape(TwoDArray.',1,[]);

Iniciar sesión para comentar.

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by