Combine each column of two array side by side and add new column to new array

21 次查看(过去 30 天)
I have two array such as array1=[0.6 0.7 0.8; 0.2 0.5 0.25; 0.9 0.7 0.1] and array2=[11 12 13; 17 18 19; 21 24 26]. What I would like to do is I want to combine array1 and array2 such that in new array i can show each column of array1 and array 2 side by side and add new column which is sum of column1 of array1 and column1 of array2 to new array.
for e.g my new array will be
newarray=[0.6 11 (11+0.6) 0.7 12 (12+0.7) 0.8 13 13.8;0.2 17 17.2 0.5 18 18.5 0.25 19 19.25;0.9 21 21.9 0.7 24 24.7 0.1 26 26.1]
How do I do this? Any advice please.

采纳的回答

Stephen23
Stephen23 2021-2-1
编辑:Stephen23 2021-2-1
A = [0.6 0.7 0.8; 0.2 0.5 0.25; 0.9 0.7 0.1]
A = 3×3
0.6000 0.7000 0.8000 0.2000 0.5000 0.2500 0.9000 0.7000 0.1000
B = [11 12 13; 17 18 19; 21 24 26]
B = 3×3
11 12 13 17 18 19 21 24 26
C = reshape([A;B;A+B],size(A,1),[])
C = 3×9
0.6000 11.0000 11.6000 0.7000 12.0000 12.7000 0.8000 13.0000 13.8000 0.2000 17.0000 17.2000 0.5000 18.0000 18.5000 0.2500 19.0000 19.2500 0.9000 21.0000 21.9000 0.7000 24.0000 24.7000 0.1000 26.0000 26.1000
  3 个评论
Stephen23
Stephen23 2021-2-1
编辑:Stephen23 2021-2-1
A = [0.6 0.7 0.8; 0.2 0.5 0.25; 0.9 0.7 0.1];
B = [11 12 13; 17 18 19; 21 24 26];
D = [sum(A,2),sum(B,2),sum(A+B,2)]
D = 3×3
2.1000 36.0000 38.1000 0.9500 54.0000 54.9500 1.7000 71.0000 72.7000

请先登录,再进行评论。

更多回答(1 个)

David Hill
David Hill 2021-2-1
array1=array1';
array2=array2';
array3=array1+array2;
newArray=reshape([array1(:),array2(:),array3(:)]',9,[])';

类别

Help CenterFile Exchange 中查找有关 Operators and Elementary Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by