Hi
i have two matrix A6*3 and B6*3
i want to combine all elements in one column but it must be sorted like the first element is A(1,1) then A(1,2) till A(6,3) then come all the elements from Matrix B
L=[A(1,1);A(1,2);A(1,3);A(2,1).......A(6,3);B(1,1);........B(6,3)];
thanks

 採用された回答

Alex Sune
Alex Sune 2019 年 5 月 29 日

1 投票

L = [reshape(A',[numel(A),1]);reshape(B',[numel(B),1])]

2 件のコメント

Basem Nouh
Basem Nouh 2019 年 5 月 29 日
can u please explain how u did that ?
or how can we do it with loop ?
Alex Sune
Alex Sune 2019 年 5 月 29 日
You can see it doing each part separately. Try with this example:
A = [1,2;3,4]
A =
1 2
3 4
>> B = [5,6;7,8]
B =
5 6
7 8
And you want a column vector with all the values:
L = [1;2;3;4;5;6;7;8]
If you execute de following reshape statements you obtain a column vector for each matrix:
reshape(A',[numel(A),1]) %A is transposed because Matlab take the values by columns
% and you want to take them by rows
ans =
1
2
3
4
See this for more information about reshape

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMatrices and Arrays についてさらに検索

質問済み:

2019 年 5 月 29 日

コメント済み:

2019 年 5 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by