Read multiple excel files and get the maximum value
Show older comments
I have a folder with 960 excel file each with 1 sheet - 3 columns and 96000 odd rows. I need to find the maximum absolute value of each column and save in another excel. I tried the following
files = dir('*.csv');
for i = 1:length(files)
data = xlsread(files(i).name);
max2010(i) = max(data);
end
and obtained this error
Unable to perform assignment because the left and right sides have a different number of elements.
Error in Maxvalue (line 4)
max2010(i) = max(data); % Maximum value in entire dataset
Answers (1)
files = dir('*.csv');
N = length(files) ; % initialize the required maximum array
max2010 = zeros(N,3) ;
for i = 1:length(files)
data = xlsread(files(i).name); % read the file
max2010(i,:) = max(data); % Get the max and save in array
end
4 Comments
SHIMNA MANOHARAN
on 5 May 2022
KSSV
on 5 May 2022
Use readtable instead of xlsread.
SHIMNA MANOHARAN
on 5 May 2022
KSSV
on 6 May 2022
You cannot use straight away max on table. You need to follow as below:
files = dir('*.csv');
N = length(files) ; % initialize the required maximum array
max2010 = zeros(N,3) ;
for i = 1:length(files)
data = readtable(files(i).name); % read the file into a table
data = table2array(data) ; % convert table to array
max2010(i,:) = max(data); % Get the max and save in array
end
Categories
Find more on Data Import from MATLAB 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!