MATLAB读取mat文件,遍历里面所有数据
·
把数据保存为mat文件
将很多不同类型的数据保存到同一个mat文件里,只需用save命令即可,如下:
A = [1 2 3; 4 5 6; 7 8 9];
B = [1 0; 0 1];
C = 'ABCXYZ';
D = 10;
E = 1:100;
F = ones(5);
save DataForTest
运行之后得到一个名为DataForTest.mat的文件,里面包含这些数据。
读取mat文件,遍历所有数据
当我们使用load命令时
TestData = load('DataForTest.mat')
会得到如下一个结构体
如果要查看其中的A包含的数据,可以用
TestData.A
这样的方法有一个缺点,需要提前知道mat文件里面的命名,而且要提前在程序里写出来。当数据太多或者不能提前知道mat文件里面的命名(A,B,…)时,就不可能用这样的方法。
网上找了一下,没找到相关的,自己想了一种方法
TestData = load('DataForTest.mat');
names = fieldnames(TestData) %获取mat文件里面的命名
for name=1:length(names) %遍历所有命名
index = names(name);
data_name = strcat('TestData.',index);
data = eval(data_name{1}) %打印所有数据
end
运行之后得到如下结果
更多推荐
已为社区贡献5条内容
所有评论(0)