How to save label in 1x1 categorical?
조회 수: 1 (최근 30일)
이전 댓글 표시
I have .mat file which dimension is (1024x1) and i want to give name that .mat file in 1x1 categorical. when i load that .mat file the output shoud be
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/589742/image.png)
댓글 수: 0
답변 (1개)
Walter Roberson
2021년 4월 20일
projectdir = '/path/to/files'; %could be '.'
dinfo = dir( fullfile(projectdir, '*.mat'));
filenames = fullfile({dinfo.folder}, {dinfo.name});
nfiles = length(filenames);
frames = cell(nfiles,1);
labels = cell(nfiles,1);
%do not assume that the variable names are the same for each time
for K = 1 : nfiles
thisfile = filenames{K};
[~, basename, ~] = fileparts(thisfile);
filestruct = load(thisfile);
fields = fieldnames(filestruct);
frames{K} = filestruct.(fields{1});
labels{K} = categorical(basename);
end
output = cell2struct([frames,labels], {'frame', 'label'}, 2);
The output will be a (number of files x 1) struct array with fields 'frame' and 'label'
참고 항목
카테고리
Help Center 및 File Exchange에서 Audio and Video Data에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!