我有一个我想要处理的大.mat文件,但它太大了,不适合单个加载。我想加载它的部分,每次只访问重要的参数。所以我几乎有两个问题:
谢谢!
答案 0 :(得分:8)
您可以使用以下方式查看变量列表:
vars = whos('-file','name.mat');
然后只需加载您想要的变量,例如列表中的第一个变量:
load('name.mat', vars(1).name)
答案 1 :(得分:6)
除了按照@natan的建议加载.mat文件中的各个变量之外,在最近的MATLAB版本中,您可以使用matfile
对象仅加载单个变量的部分内容。
例如,您可以说:
myFile = matfile('path\to\the\mat\file');
loadedData = myfile.myVarName(100:200, 500:600);
,您只会从文件myVarName
加载变量myFile
的一部分。
编辑:
matfile
对象还有方法size
,who
和whos
,这样您就可以在尝试之前确定文件包含的变量的名称和大小加载位。