2016-09-11 7 views
0

はのは私が同じ位置にある要素を関連付ける別のセルを作成するセルに結合3つの行列(それらはすべて同じサイズです)関連付ける要素のスマートな方法

output{1} = [2 3 
      4 5] 

output{2} = [5 6 
      2 9] 

output{3} = [3 10 
      2 4] 

があるとしましょう

celledoutput{1} = [2 5 3] 
celledoutput{2} = [4 2 2] 
celledoutput{3} = [3 6 10] 
celledoutput{4} = [5 9 4] 

もちろん、私は多くのforループを使用して行うことができます。サイズ(出力{1}、1)とサイズ(出力{1}、2)をループし、徐々にcelledoutputを構築してください。

しかし、スマートな方法はありますか?

答えて

1

cell2matmat2cellを使用して、いくつかの慎重な整形が一つの方法です:

n = numel(output{1}); 
m = numel(output); 

mat2cell(reshape(cell2mat(output(:).'),n,m),ones(n,1),m) 

利回り

ans{1} = 
    2  5  3 

ans{2} = 
    4  2  2 

ans{3} = 
    3  6 10 

ans{4} = 
    5  9  4 
+0

ワンダフル!ありがとうございました! – user42459

関連する問題