Brace indexing is not supported for variables of this type.

1 次查看(过去 30 天)
I am getting the following error for the attached code.
Error in Readfiles (line 8)
data = readmatrix(fnames{idx});
Could you please help me out.

采纳的回答

Ameer Hamza
Ameer Hamza 2020-12-2
fname is a struct, not a cell array. Change the line to
data = readmatrix(fnames(idx).name);
  9 个评论
Ameer Hamza
Ameer Hamza 2020-12-5
This code does not contain the line
data = readmatrix(fnames(idx).name);
as shown in your previous comment. In any case, N is a cell array in your case and you can acess the filenames like this
data = readmatrix(N{idx});

请先登录,再进行评论。

更多回答(1 个)

KSSV
KSSV 2020-12-2
% List all CSV files
fnames = dir('*.csv');
% Pre-allocate output vector
ranges = zeros(numel(fnames), 1);
% Loop over file names
for idx = 1:numel(fnames)
% Read the CSV data
data = readmatrix(fnames(idx).name);
% Get the 5th column
col5 = data(:,5);
% Get the range for this file
ranges(idx) = max(col5) - min(col5);
end
% Write the result
writematrix(ranges, 'ranges.csv');

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by