# as.array3: Reshape a vector or array to have 3 dimensions. In fda: Functional Data Analysis

 as.array3 R Documentation

## Reshape a vector or array to have 3 dimensions.

### Description

Coerce a vector or array to have 3 dimensions, preserving dimnames if feasible. Throw an error if length(dim(x)) > 3.

### Usage

``````as.array3(x)
``````

### Arguments

 `x` A vector or array.

### Details

1. dimx <- dim(x); ndim <- length(dimx)

2. if(ndim==3)return(x).

3. if(ndim>3)stop.

4. x2 <- as.matrix(x)

5. dim(x2) <- c(dim(x2), 1)

6. xnames <- dimnames(x)

7. if(is.list(xnames))dimnames(x2) <- list(xnames[[1]], xnames[[2]], NULL)

### Value

A 3-dimensional array with names matching `x`

Spencer Graves

### References

Ramsay, James O., Hooker, Giles, and Graves, Spencer (2009), Functional data analysis with R and Matlab, Springer, New York.

Ramsay, James O., and Silverman, Bernard W. (2005), Functional Data Analysis, 2nd ed., Springer, New York.

Ramsay, James O., and Silverman, Bernard W. (2002), Applied Functional Data Analysis, Springer, New York.

`dim`, `dimnames` `checkDims3`

### Examples

``````  ##
## vector -> array
##
as.array3(c(a=1, b=2))

##
## matrix -> array
##

as.array3(matrix(1:6, 2))
as.array3(matrix(1:6, 2, dimnames=list(letters[1:2],
LETTERS[3:5])))

##
## array -> array
##

as.array3(array(1:6, 1:3))

##
## 4-d array
##
# These lines throw an error because the dimensionality woud be 4
# and as.array3 only allows dimensions 3 or less.
# if(!CRAN()) {
#   as.array3(array(1:24, 1:4))
# }
``````

fda documentation built on May 29, 2024, 11:26 a.m.