Is it possible to use the LOAD function to load structure fields selectively in MATLAB?
3 次查看(过去 30 天)
显示 更早的评论
MathWorks Support Team
2012-1-12
编辑: MathWorks Support Team
2022-11-18
I would like to load structure fields selectively in MATLAB using the LOAD function. For example, if I define the following structure:
a.x = 1;
a.y = 2;
save example a;
It is possible to selectively load the structure variable a:
load example a
I want to be able to selectively load only the x field of a.
采纳的回答
MathWorks Support Team
2018-5-15
Use the "-struct" option when saving MAT-files so that structure fields are saved as separate variables. You can then use the LOAD function to select particular variables from the MAT-file:
a.x = 1;
a.y = 2;
save('example','-struct','a');
clear all;
load('example','x');
The "-struct" option is not available prior to MATLAB 7.0 (R14).
Using the "struct" flag causes each field of the structure to be individual variables in the MAT-file. To load them back into a structure use:
>> a = load('example')
5 个评论
Richard Crozier
2018-5-15
@K E, the advantage is that if you then use load on the same file like
S = load (filename)
It's put back into the structure again. In fact there's not a simple way to load variables from a file into a variable directly without them ending up in a structure.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Workspace Variables and MAT Files 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!