Adding a -v7.3 flag to a large structure array
Show older comments
Hi all,
I have been sent a large structure array as a .mat file. I am attempting to load it into Python and have been advised that should be saved with a -v7.3 flag so that it can be done successfully. I have used
save('newversion.mat','variable','-v7.3')
to do this however, I can't access parts of the array when I import into python and so I was wondering if I have done it correctly.
Many thanks for any help
5 Comments
Walter Roberson
on 26 Jul 2019
In Python you might need to use HDF5 routines to read the v7.3 file.
Claire Marie Barnes
on 26 Jul 2019
per isakson
on 26 Jul 2019
The save statement is correct. It creates an HDF5-file - disguised as a mat-file.
"when I import into python" How? Is there a special function in Python to read Matlab's HDF5-files?
Did you ask at a Python forum?
per isakson
on 26 Jul 2019
Claire Marie Barnes
on 26 Jul 2019
Answers (1)
Sai Sri Pathuri
on 8 Aug 2019
When you use save function with version 7.3, the data will be compressed by default, which may be the reason why you are unable to access parts of the array when imported into python. Use -nocompression flag in your function.
You may use the following syntax to resolve the issue
save(filename,variables,version,'-nocompression')
Refer the documentation of save from below link
Categories
Find more on Call Python from MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!