houba
Manipulation of (Large) Memory-Mapped Objects (Vectors, Matrices and Arrays)
v0.1.1
·
Feb 20, 2026
·
CeCILL-2
Description
Manipulate data through memory-mapped files, as vectors, matrices or arrays. Basic arithmetic functions are implemented, but currently no matrix arithmetic. Can write and read descriptor files for compatibility with the 'bigmemory' package.
Downloads
211
Last 30 days
21631st
487
Last 90 days
871
Last year
Trend: +15.9% (30d vs prior 30d)
CRAN Check Status
3
ERROR
11
OK
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | OK |
| r-devel-linux-x86_64-debian-gcc | OK |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | OK |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | ERROR |
| r-oldrel-macos-x86_64 | ERROR |
| r-oldrel-windows-x86_64 | ERROR |
| r-patched-linux-x86_64 | OK |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | OK |
Check details (5 non-OK)
NOTE
r-oldrel-macos-arm64
installed package size
installed size is 5.8Mb
sub-directories of 1Mb or more:
libs 5.2Mb
ERROR
r-oldrel-macos-arm64
tests
Running ‘apply.r’ [0s/0s]
Running ‘arithmetic.r’ [0s/0s]
Running ‘as-array.r’ [0s/0s]
Running ‘colSums.r’ [0s/0s]
Running ‘copy.r’ [0s/0s]
Running ‘create.r’ [0s/0s]
Running the tests in ‘tests/create.r’ failed.
Complete output:
> # Various tests about object creation and manipulation
> require(houba)
Loading required package: houba
>
> # float mmatrix ------------------------
> A <- mmatrix("float", 10, 20)
> a <- as.matrix(A)
> stopifnot(typeof(a) == "double")
>
> # set max size
> houba(max.size = 10)
$max.size
[1] 10
> stopifnot( typeof(A[1:10]) == "double" )
> stopifnot( typeof(A[1:11]) == "S4" )
>
> # assignement and subsetting
> A[1,1] <- 12
> A[3,] <- 1.34
> stopifnot( all(abs(as.matrix(A[1:3, 1:2] - c(12, 0, 1.34, 0, 0, 1.34))) < 1e-6) )
>
> A[5] <- pi
> stopifnot( all(abs(as.vector(A[,1] - c(12, 0, 1.34, 0, pi, 0, 0, 0, 0, 0))) < 1e-6) )
>
> # int mmatrix ---------------------------
> B <- mmatrix("int", 10
...[truncated]...
teger")
>
> # assignement and subsetting
> B[1,1] <- 12
> B[3,] <- 1.34
> stopifnot( all(as.matrix(B[1:3, 1:2]) == c(12L, 0L, 1L, 0L, 0L, 1L)) )
>
> B[5] <- 2
> stopifnot( all(as.vector(B[5, 1:3]) == c(2L, 0L, 0L)) )
>
> # assignement with other mmatrix values
> houba(max.size = 0) # force non conversion to R
$max.size
[1] 0
> B[2,] <- A[3,]
> stopifnot( all(as.vector(B[2, 1:4]) == c(1L, 1L, 1L, 1L)) )
>
> B[5] <- A[3]
> stopifnot( all(as.vector(B[5, 1:3]) == c(1L, 0L, 0L)) )
>
> # double mvector -------------------------
> V <- mvector("double", 10)
> v <- as.vector(V)
> V[1:4] <- pi
> stopifnot( all(as.vector(V[3:6]) == c(pi, pi, 0, 0)) )
>
> # int array --------------------------
> C <- marray("int", 2:4)
> C[,,1] <- 7
> C[,2,] <- B[5]
Error in `[<-`(`*tmp*`, , 2, , value = new("mvector", ptr = <pointer: 0x117614f40>, :
argument is missing, with no default
Calls: [<- -> [<- -> myMissing
Execution halted
NOTE
r-oldrel-macos-x86_64
installed package size
installed size is 5.8Mb
sub-directories of 1Mb or more:
libs 5.1Mb
ERROR
r-oldrel-macos-x86_64
tests
Running ‘apply.r’ [0s/1s]
Running ‘arithmetic.r’ [1s/1s]
Running ‘as-array.r’ [0s/1s]
Running ‘colSums.r’ [0s/1s]
Running ‘copy.r’ [0s/1s]
Running ‘create.r’ [0s/1s]
Running the tests in ‘tests/create.r’ failed.
Complete output:
> # Various tests about object creation and manipulation
> require(houba)
Loading required package: houba
>
> # float mmatrix ------------------------
> A <- mmatrix("float", 10, 20)
> a <- as.matrix(A)
> stopifnot(typeof(a) == "double")
>
> # set max size
> houba(max.size = 10)
$max.size
[1] 10
> stopifnot( typeof(A[1:10]) == "double" )
> stopifnot( typeof(A[1:11]) == "S4" )
>
> # assignement and subsetting
> A[1,1] <- 12
> A[3,] <- 1.34
> stopifnot( all(abs(as.matrix(A[1:3, 1:2] - c(12, 0, 1.34, 0, 0, 1.34))) < 1e-6) )
>
> A[5] <- pi
> stopifnot( all(abs(as.vector(A[,1] - c(12, 0, 1.34, 0, pi, 0, 0, 0, 0, 0))) < 1e-6) )
>
> # int mmatrix ---------------------------
> B <- mmatrix("int", 10
...[truncated]...
er")
>
> # assignement and subsetting
> B[1,1] <- 12
> B[3,] <- 1.34
> stopifnot( all(as.matrix(B[1:3, 1:2]) == c(12L, 0L, 1L, 0L, 0L, 1L)) )
>
> B[5] <- 2
> stopifnot( all(as.vector(B[5, 1:3]) == c(2L, 0L, 0L)) )
>
> # assignement with other mmatrix values
> houba(max.size = 0) # force non conversion to R
$max.size
[1] 0
> B[2,] <- A[3,]
> stopifnot( all(as.vector(B[2, 1:4]) == c(1L, 1L, 1L, 1L)) )
>
> B[5] <- A[3]
> stopifnot( all(as.vector(B[5, 1:3]) == c(1L, 0L, 0L)) )
>
> # double mvector -------------------------
> V <- mvector("double", 10)
> v <- as.vector(V)
> V[1:4] <- pi
> stopifnot( all(as.vector(V[3:6]) == c(pi, pi, 0, 0)) )
>
> # int array --------------------------
> C <- marray("int", 2:4)
> C[,,1] <- 7
> C[,2,] <- B[5]
Error in `[<-`(`*tmp*`, , 2, , value = new("mvector", ptr = <pointer: 0x7fba8892a030>, :
argument is missing, with no default
Calls: [<- -> [<- -> myMissing
Execution halted
ERROR
r-oldrel-windows-x86_64
tests
Running 'apply.r' [1s]
Running 'arithmetic.r' [1s]
Running 'as-array.r' [1s]
Running 'colSums.r' [1s]
Running 'copy.r' [1s]
Running 'create.r' [1s]
Running 'dim.r' [1s]
Running 'extract-replace.r' [1s]
Running 'inplace.r' [1s]
Running 'marray.r' [1s]
Running 'restore.r' [1s]
Running the tests in 'tests/create.r' failed.
Complete output:
> # Various tests about object creation and manipulation
> require(houba)
Loading required package: houba
>
> # float mmatrix ------------------------
> A <- mmatrix("float", 10, 20)
> a <- as.matrix(A)
> stopifnot(typeof(a) == "double")
>
> # set max size
> houba(max.size = 10)
$max.size
[1] 10
> stopifnot( typeof(A[1:10]) == "double" )
> stopifnot( typeof(A[1:11]) == "S4" )
>
> # assignement and subsetting
> A[1,1] <- 12
> A[3,] <- 1.34
> stopifnot( all(abs(as.matrix(A[1:3, 1:2] - c(12, 0, 1.34, 0, 0, 1.34))) < 1e-6) )
>
> A[5] <- pi
> stopifnot( all(abs(as.vector(A[,1] - c(12,
...[truncated]...
0L, 0L)) )
>
> # double mvector -------------------------
> V <- mvector("double", 10)
> v <- as.vector(V)
> V[1:4] <- pi
> stopifnot( all(as.vector(V[3:6]) == c(pi, pi, 0, 0)) )
>
> # int array --------------------------
> C <- marray("int", 2:4)
> C[,,1] <- 7
> C[,2,] <- B[5]
Error in `[<-`(`*tmp*`, , 2, , value = new("mvector", ptr = <pointer: 0x0000022809acb140>, :
argument is missing, with no default
Calls: [<- -> [<- -> myMissing
Execution halted
Running the tests in 'tests/marray.r' failed.
Complete output:
> require(houba)
Loading required package: houba
>
> a <- mvector("int", 2)
> a[2] <- 1
> stopifnot( a[2] == 1 )
>
> a <- mmatrix("float", 6, 3)
> a[] <- 1:18
> stopifnot( all(a[1,] == c(1, 7, 13)) )
>
> a <- marray("double", 2:4)
> a[] <- 1:24
> stopifnot( all(a[2,1,] == c(2, 8, 14, 20)) )
Error in a[2, 1, ] : argument is missing, with no default
Calls: stopifnot -> [ -> [ -> myMissing
Execution halted
Check History
ERROR 11 OK · 0 NOTE · 0 WARNING · 3 ERROR · 0 FAILURE Mar 10, 2026
ERROR
r-oldrel-macos-arm64
installed package size
installed size is 5.8Mb
sub-directories of 1Mb or more:
libs 5.2Mb
ERROR
r-oldrel-macos-x86_64
installed package size
installed size is 5.8Mb
sub-directories of 1Mb or more:
libs 5.1Mb
ERROR
r-oldrel-windows-x86_64
tests
Running 'apply.r' [1s]
Running 'arithmetic.r' [2s]
Running 'as-array.r' [1s]
Running 'colSums.r' [1s]
Running 'copy.r' [1s]
Running 'create.r' [1s]
Running 'dim.r' [1s]
Running 'extract-replace.r' [1s]
Running 'inplace.r' [1s]
Runni
...[truncated]...
all(a[1,] == c(1, 7, 13)) )
>
> a <- marray("double", 2:4)
> a[] <- 1:24
> stopifnot( all(a[2,1,] == c(2, 8, 14, 20)) )
Error in a[2, 1, ] : argument is missing, with no default
Calls: stopifnot -> [ -> [ -> myMissing
Execution halted