5.1高级例程函数
5.2低级例程函数
5.3数据导入向导;5.1高级例程函数;5.1.1MAT数据文件操作
MAT数据文件是MATLAB独有的数据文件格式,这种文件是一种二进制格式文件,扩展名为?.mat。这些*.mat文件之所以能够独立于各种平台,是因为在MAT数据文件内带有设备的签名,MATLAB在导入这种数据文件时将检查这个签名,如果发现文件来源不同于当前的系统,则自动进行必要的转换。MAT数据文件的文件格式组成如图5-1所示。;一般MAT数据文件分为两个部分:文件头部和数据。其中,文件的头部主要包括一些描述性文字和相应的版本与标识,这部分占用了120多字节;此后依次是保存在MAT文件中的数据,数据是按照数据类型、数据长度和数据三个部分保存的。
MAT文件是MATLAB独有的文件格式,提供了跨平台的数据交换能力,也是MATLAB用户最常用的数据文件格式。在MATLAB中,可以将当前工作空间中的变量保存成MAT文件,也可以将MAT文件中的数据导入到MATLAB的工作空间中。这两个过程分别使用save命令和load命令来完成。
save命令能够将当前工作空间中的变量保存到指定的数据文件中。其基本语法如下:
;其中,option可以有如下几种可能:;load命令将数据文件的数据导入到MATLAB工作空间,其基本的语法如下:
下面结合具体的操作实例来说明save和load命令的使用方法。
【例5-1】save和load命令示例。
在MATLAB命令行窗体中,键入下面的命令:
clearall;clc;
创建变量:
x1=2;x2=3;x3=4;y1=0;
;保存数据:
savexdatax1x2
察看当前路径下的MAT文件:
str=what(pwd)
str=
structwithfields:
path:D:\MyDocuments\MyWorks\MATLAB\Class\ML01_v4\Ch5
m:{8×1cell}
mlapp:{0×1cell}
mlx:{0×1cell}
mat:{xdata.mat}
mex:{0×1cell}
mdl:{0×1cell}
;slx:{0×1cell}
sfx:{0×1cell}
p:{0×1cell}
classes:{0×1cell}
packages:{0×1cell}
将数据保存为ASCII格式文件:
savexdata2.datx*-ascii
clearall
加载数据(默认加载二进制格式文件):
loadxdata
whos
NameSizeBytesClassAttributes
x11x18double
x21x18double
;加载ACSII格式的数据:
loadxdata2.dat
whos
NameSizeBytesClassAttributes
x11x18double
x21x18double
xdata23x124double
使用whos命令察看MAT数据文件:
whos-filexdata.mat
NameSizeBytesClassAttributes
x11x18double
x21x18double
;察看其他格式数据文件则会报错:
whos-filexdata2.dat
Errorusingwhos
Couldnotopenxdata2.datasavalidMAT-file.
例5-1演示了使用save和load命