Description Methods Author(s) Examples
provides hybrid data structure for 'HDF5' file
finalize()
garbage collection method
LazyH5$finalize()
none
print()
overrides print method
LazyH5$print()
self instance
new()
constructor
LazyH5$new(file_path, data_name, read_only = FALSE)
file_path
where data is stored in 'HDF5' format
data_name
the data stored in the file
read_only
whether to open the file in read-only mode. It's highly recommended to set this to be true, otherwise the file connection is exclusive.
self instance
save()
save data to a 'HDF5' file
LazyH5$save( x, chunk = "auto", level = 7, replace = TRUE, new_file = FALSE, force = TRUE, ctype = NULL, size = NULL, ... )
x
vector, matrix, or array
chunk
chunk size, length should matches with data dimension
level
compress level, from 1 to 9
replace
if the data exists in the file, replace the file or not
new_file
remove the whole file if exists before writing?
force
if you open the file in read-only mode, then saving
objects to the file will raise error. Use force=TRUE
to force
write data
ctype
data type, see mode
, usually the data type
of x
. Try mode(x)
or storage.mode(x)
as hints.
size
deprecated, for compatibility issues
...
passed to self open()
method
open()
open connection
LazyH5$open(new_dataset = FALSE, robj, ...)
new_dataset
only used when the internal pointer is closed, or to write the data
robj
data array to save
...
passed to createDataSet
close()
close connection
LazyH5$close(all = TRUE)
all
whether to close all connections associated to the data file. If true, then all connections, including access from other programs, will be closed
subset()
subset data
LazyH5$subset(..., drop = FALSE, stream = FALSE, envir = parent.frame())
drop
whether to apply drop
the subset
stream
whether to read partial data at a time
envir
if i,j,...
are expressions, where should the
expression be evaluated
i, j, ...
index along each dimension
subset of data
get_dims()
get data dimension
LazyH5$get_dims(stay_open = TRUE)
stay_open
whether to leave the connection opened
dimension of the array
Zhengjia Wang
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | # Data to save
x <- array(rnorm(1000), c(10,10,10))
# Save to local disk
f <- tempfile()
save_h5(x, file = f, name = 'x', chunk = c(10,10,10), level = 0)
# Load via LazyFST
dat <- LazyH5$new(file_path = f, data_name = 'x', read_only = TRUE)
dat
#> Class: H5D
#> Dataset: /x
#> Filename: ...
#> Access type: H5F_ACC_RDONLY
#> Datatype: H5T_IEEE_F64LE
#> Space: Type=Simple Dims=10 x 10 x 10 Maxdims=Inf x Inf x Inf
#> Chunk: 11 x 11 x 11
# Check whether the data is identical
range(dat - x)
# Read a slice of the data
system.time(dat[,10,])
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.