分类:
2006-10-24 21:04:04
作者: 来源:
Matlab提供了从磁盘文件或剪贴簿转载数据至工作区(数据导入)和将工作区变量存 入磁盘文件(数据导出)的多种途径。
最简单的办法是使用界面导入向导,打开文件菜单中的导入数据而后按提示操作。Matlab支持的主要数据文件类型和对应函数如下:
导入文本文件
文本文件需要具备统一的行列模式,使用分隔符作为数据项间隔,这些分隔符包括空格、逗号、tab、分号或其它。数据文件可能附带标题行和行列头标签。
数值数据
对于数值数据可以直接使用load函数装载,例如my_data.txt中数据如下:
1 2 3 4 5
6 7 8 9 10
命令A = load('my_data.txt')装载该文本文件数据。
如果数值数据使用其它分隔符,可以使用dlmread读入,假设my_data.txt中数据如下:
7.2;8.5;6.2;6.6
5.4;9.2;8.1;7.2
命令A = dlmread('my_data.txt', ';')读入该数据。
包含行列标签的数值数据
例如:
Grade1 Grade2 Grade3
78.8 55.9 45.9
99.5 66.8 78.0
89.5 77.0 56.7
fid = fopen('grades.dat', 'r');
grades = textscan(fid, '%f %f %f', 3, 'headerlines', 1);
fclose(fid);
包含字符和数值的混合数据
使用textread函数读入。
导出文本文件
save函数
A = [ 1 2 3 4 ; 5 6 7 8 ];
save my_data.out A –ASCII
dlmwrite函数
dlmwrite('my_data.out',A, ';')
MS-Excel电子表格文件
xlsinfo获得文件信息
使用命令[type, sheets] = xlsfinfo(filename)返回文件类型type和工作表信息。如:[type, sheets] = xlsfinfo('tempdata.xls')
Xlswrite导出数据
d = {'Time', 'Temp'; 12 98; 13 99; 14 97}
命令xlswrite('tempdata.xls', d, 'Temperatures', 'E1')将单元格数组d的数据写出至tempdata.xls文件,新建工作表'Temperatures',从该工作表的E1单元格开始写入。
Xlsread读入数据
ndata = xlsread('tempdata.xls', 'Temperatures')
[ndata, headertext] = xlsread('tempdata.xls', 'Temperatures')