Learn R Programming

TRES (version 1.1.5)

bat: Bat simulated data

Description

Synthetic data generated from tensor response regression (TRR) model. Each response observation is a two-dimensional image, and each binary predictor observation takes values 0 and 1, representing two groups.

Usage

data("bat")

Arguments

Format

A list consisting of four components:

x

A \(1 \times 20\) matrix, each entry takes values 0 and 1, representing two groups.

y

A \(64\times 64\times 20\) tensor, each matrix y@data[,,i] represents an image.

coeffiicients

A \(64\times 64 \times 1\) tensor with the bat pattern.

Gamma

A list consisting of two \(64 \times 14\) envelope basis.

Details

The dataset is generated from the tensor response regression (TRR) model: $$Y_i = B X_i + \epsilon_i, i = 1,\ldots, n,$$ where \(n=20\) and the regression coefficient \(B \in R^{64\times 64}\) is a given image with rank 14, representing the mean difference of the response \(Y\) between two groups. To make the model conform to the envelope structure, we construct the envelope basis \(\Gamma_k\) and the covariance matrices \(\Sigma_k, k=1,2\), of error term as following. With the singular value decomposition of \(B\), namely \(B = \Gamma_1 \Lambda \Gamma_2^T\), we choose the envelope basis as \(\Gamma_k \in R^{64\times 14}, k=1,2\). Then the envelope dimensions are \(u_1 = u_2 = 14\). We generate another two matrices \(\Omega_k \in R^{14\times 14} = A_k A_k^T\) and \(\Omega_{0k} \in R^{50\times 50} = A_{0k}A_{0k}^T\), where \(A_k \in R^{14\times 14}\) and \(A_{0k} \in R^{50\times 50}\) are randomly generated from Uniform(0,1) elementwise. Then we set the covariance matrices \(\Sigma_k = \Gamma_k\Omega_k \Gamma_k^T + \Gamma_{0k}\Omega_{0k} \Gamma_{0k}^T\), followed by normalization with their Frobenius norms. We set the first 10 predictors \(X_i, i=1,\ldots, 10,\) as 1 and the rest as 0. The error term is then generated from two-way tensor (matrix) normal distribution \(TN( 0; \Sigma_1, \Sigma_2)\).

References

Li, L. and Zhang, X., 2017. Parsimonious tensor response regression. Journal of the American Statistical Association, 112(519), pp.1131-1146.

Examples

Run this code
# NOT RUN {
## Fit bat dataset with the tensor response regression model
data("bat")
x <- bat$x
y <- bat$y
# Model fitting with ordinary least square.
fit_std <- TRR.fit(x, y, method="standard")
# Draw the coefficient and p-value plots
plot(fit_std)

# }

Run the code above in your browser using DataLab