library(BigDataStatMeth)
# Create test data
set.seed(123)
Y <- matrix(rnorm(100), 10, 10)
X <- matrix(rnorm(10), 10, 1)
# Save to HDF5
bdCreate_hdf5_matrix("test.hdf5", Y, "data", "Y",
overwriteFile = TRUE,
overwriteDataset = FALSE,
unlimited = FALSE)
bdCreate_hdf5_matrix("test.hdf5", X, "data", "X",
overwriteFile = FALSE,
overwriteDataset = FALSE,
unlimited = FALSE)
# Multiply matrix rows by vector
bdcomputeMatrixVector_hdf5("test.hdf5",
group = "data",
dataset = "Y",
vectorgroup = "data",
vectordataset = "X",
outdataset = "ProdComputed",
func = "*",
byrows = TRUE,
overwrite = TRUE)
# Subtract vector from matrix rows
bdcomputeMatrixVector_hdf5("test.hdf5",
group = "data",
dataset = "Y",
vectorgroup = "data",
vectordataset = "X",
outdataset = "SubsComputed",
func = "-",
byrows = TRUE,
overwrite = TRUE)
# Subtract vector from matrix columns
bdcomputeMatrixVector_hdf5("test.hdf5",
group = "data",
dataset = "Y",
vectorgroup = "data",
vectordataset = "X",
outdataset = "SubsComputed",
func = "-",
byrows = FALSE,
overwrite = TRUE)
# Cleanup
if (file.exists("test.hdf5")) {
file.remove("test.hdf5")
}
Run the code above in your browser using DataLab