# tensorStandardize: Standardize an Observation Array In tensorBSS: Blind Source Separation Methods for Tensor-Valued Observations

## Description

Standardizes an array of array-valued observations simultaneously from each mode. The method can be seen as a higher-order analogy for the regular multivariate standardization of random vectors.

## Usage

 `1` ```tensorStandardize(x) ```

## Arguments

 `x` Array of an order higher than two with the last dimension corresponding to the sampling units.

## Details

The algorithm first centers the n observed tensors Xi to have an element-wise mean of zero. Then it estimates the mth mode covariance matrix Cov_m(X) = E(X(m) X(m)^T)/(p1 ... p(m-1) p(m+1) ... pr), where X(m) is the centered m-flattening of X, for each mode and transforms the observations with the inverse square roots of the covariance matrices from the corresponding modes.

## Value

A list containing the following components:

 `x ` Array of the same size as `x` containing the standardized observations. `S ` List containing inverse square roots of the covariance matrices of different modes.

Joni Virta

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17``` ```# Generate sample data. n <- 100 x <- t(cbind(rnorm(n, mean = 0), rnorm(n, mean = 1), rnorm(n, mean = 2), rnorm(n, mean = 3), rnorm(n, mean = 4), rnorm(n, mean = 5))) dim(x) <- c(3, 2, n) # Standardize z <- tensorStandardize(x)\$x # The m-mode covariance matrices of the standardized tensors mModeCovariance(z, 1) mModeCovariance(z, 2) ```

tensorBSS documentation built on Oct. 6, 2017, 9:02 a.m.