Matlab - I want to create row matrix

  • Context: MATLAB 
  • Thread starter Thread starter thailovejj
  • Start date Start date
  • Tags Tags
    Matlab Matrix Row
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 6K views
thailovejj
Messages
1
Reaction score
0
I want to create row matrix A by using row matrix B_1 , B_2 , B_3 ,...,B_7

Example

B_1 = [1 2 3];
B_2 = [6 9 3];
B_3 = [4 7 5];
.
.
.
B_7 = [9 6 3];

Then A = [1 2 3 6 9 3 4 7 5 ... 9 6 3];

My way is

mea = input('Insert MEA No. :');

y = load(sprintf('%d.txt',mea),'-ascii');

for i=1:7
eval(['B_' num2str(i) '=y(i,:)']);
end

above code is create matrix B_1 - B_7

and Then

A = [B_1 B_2 B_3 ... B_7];

but I want the code which can use for other case.

Thank you
 
Last edited:
Physics news on Phys.org
If you start using the eval statement, you'll forever be stuck using it later on which makes code very difficult to understand.

Two alternatives would be to create a cell array:

A = [];
for i=1:7
B{i}=y(i,:);
A = [A B{i}]
end

or, if the B vectors are all the same length, then why use B at all?:

A = [];
for i=1:7
A = [A y(i,:)];
end