How can I convert a vector to 2D matrix correctly?

Dear All,
I have a vector A(33807). I would like to convert it to matrix B(177X191). I tried it with reshape function:
B=reshape(A,[177, 191]);
But I am not sure that it is correct. Could someone recommend me a better way? Thank you for your help in advance!

3 Kommentare

Guillaume
Guillaume am 29 Sep. 2015
reshape is one possibility depending how the 33807 vector elements are supposed to map to 177x191.
You haven't told us that, so it's a bit difficult to give you other options.
Dear Guillame, Thank you for your comment. I would like to convert the vector(33807) to matrix based on lambert conformal conic projection.
Guillaume
Guillaume am 30 Sep. 2015
That makes absolutely no sense. The lambert conformal conic projection converts latitude and longitude into x and y, not 1D into 2D.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Thorsten
Thorsten am 29 Sep. 2015
Bearbeitet: Thorsten am 29 Sep. 2015
That's correct. Note that reshape works along order of dimensions, so in this case the first 177 values of A would go to the first column of B, the next 177 values to the second column, and so on.
If instead the first 191 values should go to row 1, you have to write
B=reshape(A,[191, 177])';

Kommentiert:

am 30 Sep. 2015

Community Treasure Hunt

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

Start Hunting!

Translated by