hdf5 {hdf5}R Documentation

Interface to the HDF5 Library

Description

hdf5save and hd5fload provide an experimental interface to the NCSA HDF5 library.

Usage

hdf5save(file, ...)

hdf5load(file, load = TRUE, verbosity=0)

Arguments

file the name of the file in which the objects will be stored.
... the names of the objects to be saved.
load a logical value. If FALSE, a character vector containing the names of the objects in the file is returned. If TRUE (the default), the objects are returned as the components of a named list.
verbosity An integer controlling the verbosity. With verbosity=0 (the default) the hdf5 file is loaded quietly. With verbosity=1 names of groups and datasets are printed as they are encountered – this can be reassuring if you have a large file which is taking a while to load. Greater values of verbosity produce more messages which are probably only useful for debugging.

Details

hdf5save writes a representation of R objects to the specified file in a form which can be read by software which understands the HDF5 format. The objects can be read back from the file at a later date by using the function hdf5load.

Not all R types are supported and it probably doesn't make sense to put some of them into an HDF file (e.g. closures). However, lists, strings, vectors, matrices, and higher-dimensional arrays work. Lists map to HDF groups. Vectors and matrices map to datasets.

This capability is only available on machines which have the HDF5 library, version 1.2 or higher (freely available from the reference below).

Author(s)

Marcus G. Daniels mgd@swarm.org, Hugh C. Pumphrey hcp@met.ed.ac.uk

References

http://hdf.ncsa.uiuc.edu

See Also

save, load.

Examples

(m <- cbind(A = 1, diag(4)))
ll <- list(a=1:10, b=letters[1:8]);
l2 <- list(C="c", l=ll); PP <- pi
hdf5save("ex1.hdf", "m","PP","ll","l2")
rm(m,PP,ll,l2)  # and reload them:
hdf5load("ex1.hdf")
m        # read from "ex1.hdf"; buglet: dimnames dropped
str(ll)  # buglet: "pairlist" instead of "list"
str(l2)