How to load, update and save data neatly
5 views (last 30 days)
Show older comments
I have a variable saved to a .mat file which I wish to load in, update (extend) and save out again to the same file.
Obviously I can just call load with no output argument and then save. But people generally seem to say that
s = load( someFilename );
is far better than using the no output argument form. This I understand.
What I am finding difficult to do neatly is the saving back of my updated data. I can update easily as:
s.myVar = someFunction( s.myVar );
but then I can't just do:
save( someFilename, 's' )
as that will leave me with a structure in my file which would not then match the original format. I also can't do:
save( someFilename, 's.myVar' )
as this is clearly nonsense.
So do I really have to do the following?:
myVar = s.myVar;
save( someFilename, 'myVar' )
If so this seems to obviate the purpose of calling load with an output argument in the first place.
0 Comments
Accepted Answer
Star Strider
on 3 Sep 2014
See if the matfile function does what you want. (I’m not certain when it was introduced, but it’s in R2014a.)
3 Comments
Star Strider
on 3 Sep 2014
Yes, according to the documentation, it doesn’t support user-defined classes. Sorry.
More Answers (1)
See Also
Categories
Find more on Workspace Variables and MAT Files in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!