Manipulation of matrices stored as { }

let
n=[1:1:9;1:1:9];
M=n';
I used the following loop to extract parts of M to mk matrices
for k=1:3;
l=((k-1)*3)+1;
m=2+l;
mk{k}=M(l:m,1:end);
end;
In a following step I want to construct a new matrix Mnew by concatenating each mk matrix horizontally.
the wished result is:
Mnew=
1 1 4 4 7 7
2 2 5 5 8 8
3 3 6 6 9 9
To obtain Mnew I wrote:
Mnew=[mk{1,1} mk{1,2} mk{1,3}];
Question: How do I have to write to automatize the
last line above using the index k instead of
the numbers that I typed manually?
Thank you
Emerson

 採用された回答

Matt Fig
Matt Fig 2011 年 4 月 2 日

0 投票

It looks like you could use REPMAT and/or EXPAND.

1 件のコメント

Emerson De Souza
Emerson De Souza 2011 年 4 月 5 日
Hi Matt Fig,
thank you for your suggestion.
On the other hand, I solved
the problem with
Mnew=[mk{1:3}] or
Mnew=[mk{}]
But I appreciate your attention
and intention to help.
I wish you a nice day
Emerson

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

その他の回答 (0 件)

カテゴリ

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

製品

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by