PE {HDMFA} | R Documentation |
Projected Estimation for Large-Dimensional Matrix Factor Models
Description
This function is to fit the matrix factor model via the PE method by projecting the observation matrix onto the row or column factor space.
Usage
PE(X, m1, m2)
Arguments
X |
Input an array with |
m1 |
A positive integer indicating the row factor numbers. |
m2 |
A positive integer indicating the column factor numbers. |
Details
For the matrix factor models, Yu et al. (2022) propose a projection estimation method to estimate the model parameters. In details, for observations , the data matrix is projected to a lower dimensional space by setting
Given , define
and then the row factor loading matrix can be estimated by
times the leading
eigenvectors of
. However, the projection matrix
is unavailable in practice. A natural solution is to replace it with a consistent initial estimator. The column factor loading matrix
can be similarly estimated by projecting
onto the space of
with
. See Yu et al. (2022) for the detailed algorithm.
Value
The return value is a list. In this list, it contains the following:
F |
The estimated factor matrix of dimension |
R |
The estimated row loading matrix of dimension |
C |
The estimated column loading matrix of dimension |
Author(s)
Yong He, Changwei Zhao, Ran Zhao.
References
Yu, L., He, Y., Kong, X., & Zhang, X. (2022). Projected estimation for large-dimensional matrix factor models. Journal of Econometrics, 229(1), 201-217.
Examples
set.seed(11111)
T=20;p1=20;p2=20;k1=3;k2=3
R=matrix(runif(p1*k1,min=-1,max=1),p1,k1)
C=matrix(runif(p2*k2,min=-1,max=1),p2,k2)
X=array(0,c(T,p1,p2))
Y=X;E=Y
F=array(0,c(T,k1,k2))
for(t in 1:T){
F[t,,]=matrix(rnorm(k1*k2),k1,k2)
E[t,,]=matrix(rnorm(p1*p2),p1,p2)
Y[t,,]=R%*%F[t,,]%*%t(C)
}
X=Y+E
#Estimate the factor matrices and loadings
fit=PE(X, k1, k2)
Rhat=fit$R
Chat=fit$C
Fhat=fit$F
#Estimate the common component
CC=array(0,c(T,p1,p2))
for (t in 1:T){
CC[t,,]=Rhat%*%Fhat[t,,]%*%t(Chat)
}
CC