Join 10350+ others. No spamming.
I promise!

Follow us at github.



simonster/MAT.jl

68

simonster / MAT.jl

Julia

Julia module for reading MATLAB files


READ ME

Support for reading and writing MATLAB files in Julia.

Build Status

This library can read MATLAB .mat files, both in the older v5/v6/v7 format, as well as the newer v7.3 format.

Installation

Within Julia, use the package manager:

Pkg.add("MAT")

See also the requirements for the HDF5 module, used for "v7.3" files and for writing *.mat files.

Usage

To load the module:

using MAT

To read a single variable from a MAT file:

file = matopen("matfile.mat")
read(file, "varname") # note that this does NOT introduce a variable ``varname`` into scope
close(file)

To write a variable to a MAT file:

file = matopen("matfile.mat", "w")
write(file, "varname", variable)
close(file)

To read all variables from a MAT file as a Dict:

vars = matread("matfile.mat")

To write a Dict to a MAT file, using its keys as variable names:

matwrite("matfile.mat", Dict(
	"myvar1" => 0,
	"myvar2" => 1
))

To get a list of variable names in a MAT file:

file = matopen("matfile.mat")
varnames = names(file)
close(file)

To check for the presence of a variable name in a MAT file:

file = matopen("matfile.mat")
if exists(file, "variable")
    # something
end
close(file)

Caveats

  • All files are written in MATLAB v7.3 format.
  • MATLAB v4 files are not currently supported.

Credits

The MAT_HDF5 module, which provides read/write support for MATLAB v7.3 files, was written primarily by Tim Holy. The MAT_v5 module, which provides read support for MATLAB v5/v6/v7 files, was written primarily by Simon Kornblith.