Merge all rows in a cell into one row

34 vues (au cours des 30 derniers jours)
BN
BN le 10 Fév 2020
Hey all, Here is my 40 x 32 cell.
I want to merge all 40 rows into one row. So in the output, I would like to have a 1 x 1280 cell. 1280 is 40 * 32.
Capture.JPG
I searched and tried to use
result = num2cell(NewC2LatLon,2);
But it gave me totally wrong answers.
Thank you all.

Réponse acceptée

Turlough Hughes
Turlough Hughes le 10 Fév 2020
Modifié(e) : Turlough Hughes le 10 Fév 2020
Similar to numeric arrays writting NewC2LatLon(:) returns all the all elements of the array in a single column. However, I think what you want is to take the second row and add it to the right of the first, and so on. You can do that as follows:
NewC2LatLon = NewC2LatLon.';
NewC2LatLon = NewC2LatLon(:).';
  2 commentaires
Turlough Hughes
Turlough Hughes le 10 Fév 2020
Modifié(e) : Turlough Hughes le 10 Fév 2020
For example:
>> a = reshape(1:9,3,3) % Sample array
a =
1 4 7
2 5 8
3 6 9
>> a = a.'
a =
1 2 3
4 5 6
7 8 9
>> a = a(:).'
a =
1 4 7 2 5 8 3 6 9
The result is you get the rows placed beside each other.
BN
BN le 10 Fév 2020
Thank you.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by