library(BigDataStatMeth)
# Create a matrix with upper triangular values
X <- matrix(rnorm(100), 10, 10)
X.1 <- X
X[lower.tri(X)] <- 0
# Save to HDF5
bdCreate_hdf5_matrix("test_file.hdf5", X, "data", "X",
overwriteFile = TRUE,
overwriteDataset = FALSE,
unlimited = FALSE)
# Mirror upper triangular to lower
bdWriteOppsiteTriangularMatrix_hdf5(
filename = "test_file.hdf5",
group = "data",
dataset = "X",
copytolower = TRUE,
elementsBlock = 10
)
# Create a matrix with lower triangular values
X <- X.1
X[upper.tri(X)] <- 0
# Add to HDF5 file
bdCreate_hdf5_matrix("test_file.hdf5", X, "data", "Y",
overwriteFile = FALSE,
overwriteDataset = FALSE,
unlimited = FALSE)
# Mirror lower triangular to upper
bdWriteOppsiteTriangularMatrix_hdf5(
filename = "test_file.hdf5",
group = "data",
dataset = "Y",
copytolower = FALSE,
elementsBlock = 10
)
# Cleanup
if (file.exists("test_file.hdf5")) {
file.remove("test_file.hdf5")
}
Run the code above in your browser using DataLab