Hi everyone,
I have a folder with excel files with I would all like to load in and combine. Is this a possibility? I want to prevent loading them in one-by-one and then combining them one-by-one since it contains around a 100 excel files with all just one row of heading and one row of data.

 Akzeptierte Antwort

Sulaymon Eshkabilov
Sulaymon Eshkabilov am 6 Feb. 2023

0 Stimmen

There are a few different ways to get this task done. One of them is this one if your data files have the same number of numerical data sets (there is just one row of data in each file you stated):
FILE = fullfile('C:\Users\...', '*.xlsx'); % Directory where the files are residing.
LIST = dir(FILE);
N = length(LIST); % N number of files
Ncols = ??? % Ncols how many columns of data in
D = zeros(N, Ncols);
for ii = 1 : N
FFName = fullfile(LIST(ii).folder, LIST(ii).name);
DATA = readmatrix(FFName);
D(ii, :) = DATA; % NOW D contains all data from 100 files
end

1 Kommentar

Lotte Piek
Lotte Piek am 6 Feb. 2023
thank you very much! Would it be a possibility to keep the header ?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Vineeta Shukla
Vineeta Shukla am 6 Feb. 2023
Bearbeitet: Vineeta Shukla am 6 Feb. 2023

0 Stimmen

Hi,
From my understanding, you can use the function spreadsheetDatastore to manage and import the data when you have data stored across multiple spreadsheet files.
Here is an example from documentation:
https://www.mathworks.com/help/matlab/import_export/read-a-sequence-of-spreadsheet-files.html
Here is a link to the documentation to understand more about spreadsheetDatastore: https://www.mathworks.com/help/matlab/ref/matlab.io.datastore.spreadsheetdatastore.html

Kategorien

Produkte

Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by