vecx: convert an 3D array into a matrix and back

View source: R/vecx.r

vecxR Documentation

convert an 3D array into a matrix and back

Description

converts a 3D-array (e.g. containing landmark coordinates) into a matrix, one row per specimen or reverse this.

Usage

vecx(x, byrow = FALSE, revert = FALSE, lmdim)

Arguments

x

array or matrix

byrow

logical: if TRUE, the resulting vector for each specimen will be x1,y1,z1,x2,y2,z2,..., and x1,x2,...,y1,y2,...,z1,z2,... otherwise (default). The same is for reverting the process: if the matrix contains the coordinates as rows like: x1,y1,z1,x2,y2,z2,... set byrow=TRUE

revert

revert the process and convert a matrix with vectorized landmarks back into an array.

lmdim

number of columns for reverting

Value

returns a matrix with one row per specimen

Author(s)

Stefan Schlager

Examples


if (require(shapes)) {
data <- vecx(gorf.dat) 
#revert the procedure
gdat.restored <- vecx(data,revert=TRUE,lmdim=2)
range(gdat.restored-gorf.dat)
}

Morpho documentation built on Feb. 16, 2023, 10:51 p.m.