function myScript()
mat_files = dir('*.mat');
profiles = [];
sub_ints = {};
sub_bands = {};
for i = 1: numel(mat_files)
file_name = mat_files(i).name;
fprintf('processing %s\n', file_name);
data = load(file_name);
profiles = [profiles; data.profile];
sub_ints = [sub_ints; data.subints];
sub_bands = [sub_bands; data.subbands];
end
save('alldata.mat', 'profiles', 'sub_ints', 'sub_bands', '-v7.3');
end
但是有下面的错误 引用不存在的字段'profile'。
myp中的错误(第13行) profiles = cell2mat({profiles; data.profile}); profile是1 * 64 double sub_ints是18 * 64 double sub_bands是16 * 64 double
答案 0 :(得分:0)
检查定义sub_ints
和sub_bands
时创建的数组类型。这些是单元格数组,因此您需要以不同方式使用它们。您可能希望对profiles
执行相同操作。
for i = 1: numel(mat_files)
file_name = mat_files(i).name;
fprintf('processing %s\n', file_name);
data = load(file_name);
profiles = [profiles; data.profile];
sub_ints{i} = data.subints;
sub_bands{i} = data.subbands;
end
sub_ints = cell2mat(sub_ints);
sub_bands = cell2mat(sub_bands);