Merging several mat files in a row order

조회 수: 2 (최근 30일)
Ahmet Hakan UYANIK
Ahmet Hakan UYANIK 2021년 7월 11일
댓글: Jan 2021년 7월 15일
Hi everyone,
I have 65 mat files with different names and each mat file is 1x1 struct, contains information as longitude, latitude, year(335x1), month(335x1) etc.
So how can i combine them as a single mat file which should have first row as a information of first mat file, second row as a information of second mat file, until 65 rows of each mat file?
I would be very pleased if you have any idea about how to do it?

답변 (1개)

Jan
Jan 2021년 7월 11일
You did not explain, how a list of the files names can be obtained. I guess, that they can be found in the same folder:
Folder = 'C:\your\folder';
Files = dir(fullfile(Folder, '*.mat'));
DataC = cell(1, numel(Files));
for iFile = 1:numel(Files)
aFile = fullfile(Folder, Files(iFile).name);
DataC{iFile} = load(aFile);
end
Data = cat(2, DataC{:});
  댓글 수: 4
Ahmet Hakan UYANIK
Ahmet Hakan UYANIK 2021년 7월 14일
files contains structs with a field name and with subfields of longitutde latitude datetime and observation as well. Expected output is having one mat file that each file with its subfields in a row, so that i can just call with the row order.
Has it become more clear?
Jan
Jan 2021년 7월 15일
What are "subfields in a row"? Fields do not have an orientation. What is "calling with the row order"?
I assume, you want to create either a struct array, or to write a text file containing rows.

댓글을 달려면 로그인하십시오.

카테고리

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