在使用matlab过程中,会出现反复使用同一个数据集的情况,如果能把数据集和对应标签同时存储,这样能再下次加载时省很多事,也避免了命名上的冗余,操作过程如下:
一、保存为struct的方法
目前工作区内有这样一组数据集和标签:
选中两个矩阵,右键点击另存为:
最后直接命名就好:
二、struct数据的加载:
例如,目前有ds4.mat数据,数据内容为红框,包含了data和label两个数据
方法一:直接加载
num=4;
load(['.\dataset\mat\ds',num2str(num),'.mat']) ;
效果:data和label数据直接加载到了工作区。
说明,将相对路径地址传给load,load将直接加载,这里之所以提出了num是因为我将其他数据集也命名为了ds+数字的形式,这样可以方便测试其他数据集,例如我将num改为1,就编程加载ds1数据集。
方法二:需要重命名
加载数据的代码:
%% 加载数据
num=4;
data1=load(['.\dataset\mat\ds',num2str(num),'.mat']) ;
data=getfield (data1, 'data');
group=getfield (data1, 'label');
效果:
说明:
先用load语句加载数据集,方法和前面相同,但由于我前面多了data1,所以数据以struct的格式存入了data1
再用getfield提取data1的数据,此时就能重命名为其他变量名,此例子我选用的data和group。