From version 7 3 on you need an hdf5 interface like h5py.
Mat file in python.
After reading a structure called e g.
Here are examples of how to read two variables lat and lon from a mat file called test mat.
Python should then open this without problems.
Scipy is a really popular python library used for scientific computing and quite naturally they have a method which lets you read in mat files.
You will need an hdf5 python library to read matlab 7 3 format mat files.
Mat scipy io loadmat file mat similarly you can use savemat to export to mat files.
Matlab up to 7 1 mat files created with matlab up to version 7 1 can be read using the mio module part of scipy io reading structures and arrays of structures is supported elements are accessed with the same syntax as in matlab.
Reading them in is definitely the easy part.
Coming from the academia the annotations for the dataset was in the mat format.
Scipy io savemat file name mdict appendmat true format 5 long field names false do compression false oned as row source save a dictionary of names and arrays into a matlab style mat file.
Reading matlab structures in mat files does not seem supported at this point.
Struct its lat element can.
Try loading the mat file in matlab or octave and saving it again with the v7 option.
You can get the file used in this post here.
And after that the loadmat is the way to go.
Here s an example running an octave script via oct2py saving the resulting octave workspace onto a mat file and loading the mat file into python.
This saves the array objects in the given dictionary to a matlab style mat file.
These files can be read in python using for instance the pytables or h5py package.
Because scipy does not supply one we do not implement the hdf5 7 3 interface here.
Parameters file name str or file like object.
V4 level 1 0 v6 and v7 to 7 2 matfiles are supported.
Any matlab object can be a value of a field.
Matlab structs are a little bit like python dicts except the field names must be strings.
As for all objects in matlab structs are in fact arrays of structs where a single struct is an array of shape 1.
The matlab variables matrices arrays can be stored in mat files in order to read this data in python you would need a scipy io package.
There you can import an mat file from matlab into python and go on working with these data.