Type: | Package |
Title: | Converts Tabular Data to Interleaved Vectors |
Version: | 0.1.2 |
Date: | 2024-01-18 |
Description: | Converts matrices and lists of matrices into a single vector by interleaving their values. That is, each element of the result vector is filled from the input matrices one row at a time. This is the same as transposing a matrix, then removing the dimension attribute, but is designed to operate on matrices in nested list structures. |
License: | MIT + file LICENSE |
Encoding: | UTF-8 |
RoxygenNote: | 7.2.3 |
Depends: | R (≥ 3.0.2) |
LinkingTo: | geometries (≥ 0.2.4), Rcpp |
Imports: | Rcpp |
Suggests: | covr, sfheaders, tinytest |
NeedsCompilation: | yes |
Packaged: | 2024-01-17 23:38:07 UTC; dave |
Author: | David Cooley [aut, cre], Mapbox [cph] (author of header library earcut.hpp) |
Maintainer: | David Cooley <david.cooley.au@gmail.com> |
Repository: | CRAN |
Date/Publication: | 2024-01-17 23:50:02 UTC |
Interleave
Description
Converts matrices and lists of matrices into a vector. The elements of the vector are taken from the matrices one row at a time.
Usage
interleave(x)
Arguments
x |
object to interleave |
Value
vector of interleaved values
Examples
## matrix (this is equivalent to a LINESTRING in spatial structures)
m1 <- matrix(1:20, ncol = 2, byrow = TRUE )
interleave( m1 )
## This is the same as transposing and removing the 'dim' attribute
tm <- t(m1)
attr( tm, "dim" ) <- NULL
all( interleave( m1 ) == tm )
## list of matrices (this is equivalent to a POLYGON in spatial structures)
m2 <- matrix(20:1, ncol = 2, byrow = TRUE )
l <- list( m1, m2 )
interleave( l )
## nested list of matrices
l <- list( m1, list( list( m2 ) ) )
interleave( l )