This function performs inference for the DPI
estimator of a factor loading vector in the tensor CP-factor model (Chang et al., 2026+).
Given a direction vector h, a factor index i, a mode index
j, the observed tensor time series Y, and the output object
returned by CP_TTS, the function returns the linear transformation of the debiased estimate,
its estimated standard error, the original iterative loading estimator, and
the estimated bias-correction term.
CP_Inference(
h,
i,
j,
Y,
res.CP.DPI,
var.est = c("plug-in", "long-run"),
kernel = NULL,
b_n = NULL
)A list with the following components:
aij.h.deThe debiased linear transformation \(\mathbf{h}^{\top}(\hat{\mathbf{a}}_{i,j} - \hat{\boldsymbol{\vartheta}}_{i,j})\).
se.h.ijThe estimated standard error of aij.h.de.
aij.iterThe original iterative estimator \(\hat{\mathbf{a}}_{i,j}\).
vartheta.ijThe estimated bias-correction term \(\hat{\boldsymbol{\vartheta}}_{i,j}\).
A numeric vector of length \(d_j\). It specifies the linear transformation \(\mathbf{h}^{\top}(\hat{\mathbf{a}}_{i,j} - \hat{\boldsymbol{\vartheta}}_{i,j})\), where \(\hat{\boldsymbol{\vartheta}}_{i,j}\) is the bias-correction term.
A positive integer. The factor index.
A positive integer. The tensor mode index.
An array containing the observed tensor time series with dimension \(n \times d_1 \times \cdots \times d_m\).
An output object returned by CP_TTS.
A character string specifying the variance estimator.
Available options are "plug-in" and "long-run". The default is
"plug-in".
A kernel function used for the long-run variance estimator.
If NULL, the quadratic spectral kernel is used. This argument is only
used when var.est = "long-run".
A positive number specifying the bandwidth used for the long-run
variance estimator. If NULL, a data-driven bandwidth rule is used.
This argument is only used when var.est = "long-run".
Let \(\hat{\mathbf{a}}_{i,j}\) be the DPI estimator of the loading vector for factor \(i\) and mode \(j\). The function computes the debiased estimator \(\hat{\mathbf{a}}_{i,j}-\hat{\boldsymbol{\vartheta}}_{i,j}\) and returns the linear transformation $$ \mathbf{h}^{\top} \left( \hat{\mathbf{a}}_{i,j} - \hat{\boldsymbol{\vartheta}}_{i,j} \right). $$ The reported standard error is $$ \sqrt{ \widehat{\mathrm{Var}} \left[ \mathbf{h}^{\top} \left( \hat{\mathbf{a}}_{i,j} - \hat{\boldsymbol{\vartheta}}_{i,j} \right) \right]/n } , $$ where \(n\) is the sample size. The variance can be estimated either by the plug-in estimator derived under the independence condition between the factors and idiosyncratic errors, or by a kernel-type long-run variance estimator. See Chang et al. (2026+) for more details on the construction of \(\hat{\boldsymbol{\vartheta}}_{i,j}\) and the estimated variance.
Chang, J., Huang, G., Yao, Q., & Yu, L. (2026+). CP-factorization for high dimensional tensor time series and double projection iterations. Preprint. tools:::Rd_expr_doi("doi:10.48550/arXiv.2606.08560").
if (FALSE) {
fit <- CP_TTS(Y)
out <- CP_Inference(
h = h,
i = 1,
j = 2,
Y = Y,
res.CP.DPI = fit
)
out$aij.h.de
out$se.h.ij
out$aij.iter
out$vartheta.ij
## Use the long-run variance estimator
out.lr <- CP_Inference(
h = h,
i = 1,
j = 2,
Y = Y,
res.CP.DPI = fit,
var.est = "long-run"
)
}
Run the code above in your browser using DataLab