Join matrices in for loop

I am importing several files in matlab which are in csv format. Each of these files has two columns. So when I import the first one I create a matrix with two columns. therefore I would like to join this 2 column matrices in one matrix. I would like to do that in a for loop.
My code is the following:
files=dir('*.csv');
Data=[];
for i=1:length(files)
fid(i)=fopen(files(i).name);
files(i).values=textscan(fid(i), '%f %f','delimiter',',','HeaderLines',20,'MultipleDelimsAsOne',1);
A=cell2mat(files(i).values);
end
In my code each time the matrix A is a two column matrix. So I would like to join all the A matrices.

 采纳的回答

files=dir('*.csv');
A=[];
for i=1:length(files)
fid(i)=fopen(files(i).name);
files(i).values=textscan(fid(i), '%f %f','delimiter',',','HeaderLines',20,'MultipleDelimsAsOne',1);
A=[A;cell2mat(files(i).values)];
end

1 个评论

Thank you very much for the answer. It was so easy to implement....
Only one notice it should be
A=[A cell2mat(files(i).values)];
The semicolon must be removed

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by