一、保存变量
使用Matlab的save函数可以将Matlab工作区中的变量存储到文件中。这个函数基本的语法结构为:
save filename var1 var2 ...
其中filename是要保存到的文件名,而var1、var2等则是要存储的变量名。此外,还可以使用通配符来保存一类变量,例如:
save filename var*
这将会保存以var开头的所有变量。
值得一提的是,对于数值型变量,Matlab的默认保存格式是.mat文件。这种格式是Matlab的专用二进制格式,可以更有效地保留数值信息。而对于字符串、字符向量等其他格式的变量,则会保存为普通的文本文件。
二、结构体变量的保存
当需要将结构体变量保存到文件中时,则需要使用save函数的结合参数,具体语法如下:
save filename struct1 struct2 ... -struct
其中,struct1、struct2等为需要存储的结构体变量名,-struct则是要求Matlab将结构体变量保存成一个二进制格式的结构体文件。
同样地,对于文本类型的结构体变量,Matlab可以使用.mat和.mat,并不影响数据的完整性。
三、保存函数
除了保存变量和结构体变量外,Matlab的save函数还可以用来保存函数文件。这是因为在Matlab中,函数也被视作变量。对于一个简单的函数,只需要使用原来的save函数保存即可,例如:
save myfun.m
这将保存myfun函数文件为普通文本文件。如果需要保存包含多个函数的文件,就需要使用-MAT选项:
save myfun.m -MAT
这样,Matlab就会以专用二进制格式将文件保存下来。
四、更改默认格式
如上所述,默认的保存格式为.mat文件,但是当需要保存的文件类型不属于数值类型和字符串类型时,就需要将默认的保存格式更改为其他格式,例如.mat文件无法保存图片文件。Matlab提供了一种机制来更改默认的保存格式:使用save函数的另一种格式:
save filename var1 var2 ... -ascii
其中,-ascii就是要求Matlab将文本型变量、图片文件等数据以普通文本文件格式进行保存。这样就可以在Matlab以外的文本编辑器中打开和查看这些数据。
五、使用Compressed选项
如果需要保存的变量非常大,例如包含数千万次模拟的数据,则保存文件的大小很容易会超出内存和磁盘容量的限制。Matlab提供了Compressed选项来缓解文件大小过大的问题:
save filename var1 var2 ... -Compressed
这样,Matlab就会在保存变量时对其进行压缩,以缩小文件大小。但是需要注意的是,压缩过程会消耗更多的计算资源和时间,保存文件和读取文件时也会更加耗时。
1、
使用eval
若i不为整数,改换i即可
上述为保存至分开的mat数据当中
for i=1:10
data=i;
eval(['save data',num2str(i)]);
end
2、
如果要一次保存至一个mat当中,可以直接使用save
save ('filename','data1','data2','-ascii','-append')
save ('filename.mat','data1','data2','-append')
for i=1:10
j = 2:10
file=['F:\01-科研文档\1论文文献\01-南极半岛岩石圈有效弹性厚度研究\01-杨安方法论文\New Folder\',num2str(i),'.mat'];
save(file,'i','j');
end