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.

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 19 Apr. 2013

0 Stimmen

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 Kommentar

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by