我有一个要处理的大 .mat 文件,但它太大而无法装入单个负载。我想分部分加载它,每次只访问重要参数。所以我实际上有两个问题:
- 如何在不加载 mat 文件的情况下访问它的变量名称?
- 如何仅将其中一个加载到工作区?
谢谢!
您可以使用以下命令查看变量列表:
vars = whos('-file','name.mat');
然后只需通过以下方式加载您想要的变量,例如列表中的第一个变量:
load('name.mat', vars(1).name)
除了按照@natan 的建议从 .mat 文件中加载单个变量外,在最新版本的 MATLAB 中,您还可以使用matfile
对象仅加载单个变量的一部分。
例如,你可以说:
myFile = matfile('path\to\the\mat\file');
loadedData = myfile.myVarName(100:200, 500:600);
myVarName
并且您将只从文件中加载一部分变量myFile
。
编辑:
该matfile
对象还具有方法和size
,因此您可以在尝试加载位之前确定文件包含的变量的名称和大小。who
whos