Use a loop to load .dat files (with matrices) and manipulate them

Hi, I have some .dat files which include measurements in a matrix form. I want to load them in matlab and in each of them to remove some of the columns.
I am trying something like this but it doesn't work:
nof=10; % number of files
for i=1:nof
D=dir('*.dat)
load (D(i)....) %????
% remove column
end
Any help?

 Accepted Answer

D = dir('*.dat');
nof = min(10, length(D));
for K = 1:nof
thisname = D(K).name;
Indata = load(thisname);
Indata(:,17) = []; %delete column 17
%then what?? Guess I'll save the data
newname = ['new_' thisname];
save(newname,'InData')
end

More Answers (1)

If you use dir, it returns a struct. In your case, you should do
load(D(i).name)
instead.
HTH

Categories

Find more on Programming 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!