Saving structure as a .mat file with matrices, strings and numbers
11 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Joaquin Batista
il 18 Set 2019
Commentato: Joaquin Batista
il 23 Set 2019
I have a very large structure full of data that fails to save as a .mat file. Some feilds have strings while other have scalars while others have matrices.
save('data.mat', '-struct', s)
Save does not workk in this case, I suspect because its not a scalar but in the save help page we can save structures.
The error I get is:
"Error using save"
"Must be a string scalar or character vector."
and if I add the '-struct' delimiter I get the error:
Error using save
The argument to -STRUCT must be the name of a scalar structure variable.
0 Commenti
Risposta accettata
Rik
il 18 Set 2019
There are two issues here. If you read the doc it specifies that the struct must be scalar (each field is allowed to be any type or size). It also still requires you to enter the variable name as a char.
save('data.mat', '-struct', 's')%will only work if s is a scalar struct
If your struct is an array, you will either have to make it a scalar struct, or avoid the struct syntax.
%example:
s_wrapped=struct('content',s);
save('data.mat', '-struct', 's_wrapped')
3 Commenti
Rik
il 19 Set 2019
Thank you for pointing this out.
I was just describing how you could use the '-struct' syntax without having a scalar struct. I don't know what the benefit would be, but this does work. I suspect the first syntax is actually the one that Joaquin is looking for, making a discussion about the usefulnes of the second moot.
Più risposte (0)
Vedere anche
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!