Matlab 使用另一个变量名从.MAT文件加载特定列

Matlab 使用另一个变量名从.MAT文件加载特定列,matlab,Matlab,当我需要允许用户指定要导入的数据集时,如何从.mat文件加载特定的数据集 例如: a = 'setII'; % User specifies db = matfile('example.mat'); model = db.a; 这将把a读作'setII',然后实质上加载db.setII 当前,它在尝试查找标记为“a”的数据集时出错。使用动态字段引用: model = db.(a) 如果a是一个字符串,其中包含db中的字段/属性的名称,则该选项有效 结构的示例: example = struc

当我需要允许用户指定要导入的数据集时,如何从.mat文件加载特定的数据集

例如:

a = 'setII'; % User specifies
db = matfile('example.mat');
model = db.a;
这将把
a
读作
'setII'
,然后实质上加载
db.setII


当前,它在尝试查找标记为“a”的数据集时出错。

使用动态字段引用:

model = db.(a)
如果
a
是一个字符串,其中包含
db
中的字段/属性的名称,则该选项有效

结构的示例:

example = struct('name','test','values',[1 2 3 4], 'size', 4);
fieldname = 'values';
x = example.(fieldname)
返回

x = [1 2 3 4]