How to save contents of nonscaler structure?

4 visualizzazioni (ultimi 30 giorni)
Greydon Gilmore
Greydon Gilmore il 18 Set 2017
Commentato: Stephen23 il 18 Set 2017
Hi There, I have a nonscalar structure of data that I wish to save. It seems the usual call to save does not work on nonscaler structures. Does anyone have a workaround?
My current structure is 1x4, with the second dimension being associated with different recording channels from my study struct(1).raw struct(2).raw ec.
Thank you in advance
  2 Commenti
OCDER
OCDER il 18 Set 2017
What is the "usual call" that you are using? I think this Q&A might help: https://www.mathworks.com/matlabcentral/answers/29282-non-scalar-structures
Stephen23
Stephen23 il 18 Set 2017
"It seems the usual call to save does not work on nonscaler structures."
Yes it does:
save('nameOfFile.mat','nameofStruct')
Why do you think that this does not work?

Accedi per commentare.

Risposte (1)

Walter Roberson
Walter Roberson il 18 Set 2017
You can just save() the structure. You do not need to use the -struct flag to save(). The -struct flag of save is for the particular case where you have a (scalar) structure whose individual fields you want to create as variables in a .mat file.
datastruct = load('YourMatFile.mat');
save('YourNewMatFile.mat', 'datastruct', '-struct')
load() of a .mat stored into a variable creates a scalar structure with one field for each variable stored in the .mat file, and save() with the -struct flag does the opposite, saving the individual fields into individual variables in a .mat file.

Categorie

Scopri di più su Structures in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by