Cicle for read data.

3 views (last 30 days)
Jair Bocanegra Flores
Jair Bocanegra Flores on 1 Jul 2021
Hi. I'm trying to read a group of .dat files using the next code and I'm getting the error "Array indices must be positive integers or logical values."
%% Set up the Import Options and import the data
opts = delimitedTextImportOptions("NumVariables", 3);
% Specify range and delimiter
opts.DataLines = [18, 1138];
opts.Delimiter = "\t";
% Specify column names and types
opts.VariableNames = ["LagTime", "g^-2","vacio"];
opts.SelectedVariableNames = ["LagTime", "g^-2"];
opts.VariableTypes = ["double", "double", "string"];
% Specify file level properties
opts.ExtraColumnsRule = "ignore";
opts.EmptyLineRule = "read";
% Specify variable properties
opts = setvaropts(opts, "vacio", "WhitespaceRule", "preserve");
opts = setvaropts(opts, "vacio", "EmptyFieldRule", "auto");
% Import the data
for k=0:95
T= sprintf("M3%d.dat",k);
M3{k}= readtable(T, opts);
end

Accepted Answer

David Hill
David Hill on 1 Jul 2021
for k=0:95
T= sprintf("M3%d.dat",k);
M3{k+1}= readtable(T, opts);%must start indexing at 1
end

More Answers (0)

Categories

Find more on Data Import and Analysis in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!