有人可以指导我使用matlab以最佳方式执行此操作。
我的文件名为 001_g_01.sig ... 001_g_08.sig,002_g_01.sig ... 002_g_010.sig,003_g_01.sig ... 003_g_08,最多n个文件。 我想要做的是为属于一个用户的文件分配标签( ie001_g_01.sig ... 001_g_08.sig as" User1",002_g_01.sig ... 002_g_010.sig as&# 34; User2" 等等。
我有以下代码来阅读文件。
dirName= '/FolderPath';
files = dir( fullfile(dirName,'001_g_1.Sig') );
files = {files.name};
dirName1= '/FolderPath';
files1 = dir( fullfile(dirName1,'*.Sig') );
files1 = {files1.name};
for i=1:length(files)
fname = fullfile(dirName,files{i});
%# some calculation
for j=i+1:length(files1)
fname1 = fullfile(dirName1,files1{j});
%# some calculation
end
end
答案 0 :(得分:0)
你可以这样做:
label = [repmat('User1',size(files,1),1); repmat('User2',size(files1,1),1) ];
这将创建包含'User1'
和'User2'
的标签数组。如果你需要单独使用它,你可以这样做:
label1 = [repmat('User1',size(files,1),1)];
答案 1 :(得分:0)
files1 =
'001_g_01.sig'
'001_g_08.sig'
'003_g_01.sig'
.
.
如果files1
是单元,如上所述,那么您可以写:
userlabel = {'001','002','003'};
f = cellstr(files1);
for ii = 1:3
result{ii} = strncmp(userlabel(ii),f,3);
end