how to creating new matrix which is the variables come from 2 different matrix..?

I have a little matrix problem which perhaps interesting for you. Here it comes :
I have 2 matrix like below :
A = 8 1
9 3
1 5
9 10
6 10
B = 0.1576 0.1419
0.9706 0.4218
0.9572 0.9157
0.4854 0.7922
0.8003 0.9595
And i want to join those two matrix and separate each line of those two matrix above become 5 different matrix with loop process, like below :
C(1) = 8 0.1576
1 0.1419
C(2) = 9 0.9706
3 0.4218
C(3) = 1 0.9572
5 0.9157
C(4) = 9 0.4854
10 0.7922
C(5) = 6 0.8003
10 0.9595
I am a rookie in matlab and still need an assist for some matlab problem from every pro in this forum.
Anyone have the solution..?
thank you..

 Accepted Answer

C = permute(cat(3,A,B),[2 3 1])
in cell array
Ccell = reshape(num2cell(C,[1 2]),[],1);
with for-loop
C2 = cell(size(A,1),1)
for jj = 1:numel(C2)
C2{jj} = [A(jj,:);B(jj,:)]';
end

3 Comments

when i using your loop operation why it just created matrix like below :
C2 =
[2x2 double]
[2x2 double]
[2x2 double]
[2x2 double]
[2x2 double]
Am I doing mistake..?
ok thank you for your help.. it really works..

Sign in to comment.

More Answers (1)

You could have your 2x2 matrices as sheets C(:,:,i) of a 3D array, just by doing
C=reshape([A,B].',2,2,[])

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!