多指标面板数据因子分析
1 多指标面板数据的统计特征
严格来说,多指标面板数据是不能用二维数据表示 的,应该用三维数据,但是可以把三维数据在平面上转换成二维的形式。 设总体有 N N N个样本,每个样本有 p p p个指标变量,时间跨度为 T T T,则 X i j ( t ) X_{ij}(t) Xij(t)表示第 i i i个样本的第 j j j个变量在时间 t t t的取值。
在因子分析的过程中,多指标面板数据的统计函数也与截面数据的统计函数截然不同,设多指标面板数据为 X i j ( t ) X_{ij}(t) Xij(t), i = 1 , . . . , N , j = 1 , . . . , p , t = 1 , . . . , T i = 1,...,N, j = 1,...,p, t=1,...,T i=1,...,N,j=1,...,p,t=1,...,T,则有第 j j j个指标的均值为:
X ˉ j = 1 N 1 T ∑ t = 1 T ∑ i = 1 N X i j ( t ) \bar{X}_{j}=\frac{1}{N} \frac{1}{T} \sum_{t=1}^{T} \sum_{i=1}^{N} X_{i j}(t) Xˉj=N1T1t=1∑Ti=1∑NXij(t)
第 j j j个指标的方差为:
V A R X j = 1 T 1 N − 1 ∑ i = 1 N [ X j ( t ) − X ‾ j ] 2 \mathrm{VAR}_{\mathrm{X}_{j}}=\frac{1}{\mathrm{~T}} \frac{1}{\mathrm{~N}-1} \sum_{i=1}^{\mathrm{N}}\left[\mathrm{X}_{\mathrm{j}}(\mathrm{t})-\overline{\mathrm{X}}_{j}\right]^{2} VARXj= T1 N−11i=1∑N[Xj(t)−Xj]2
对于不同时点 0 ⩽ t 1 < t 2 ⩽ T 0 \leqslant \mathrm{t}_1<\mathrm{t}_{2} \leqslant \mathrm{T} 0⩽t1<t2⩽T,第 j j j个指标的协方差函数为:
COV x j ( t 1 , t 2 ) = 1 N − 1 ∑ i = 1 N [ X i j ( t 1 ) − X ‾ j ] [ X i j ( t 2 ) − X ‾ j ] \operatorname{COV}_{\mathrm{x}_{\mathrm{j}}}\left(\mathrm{t}_1, \mathrm{t}_2\right)=\frac{1}{\mathrm{N}-1} \sum_{\mathrm{i}=1}^{\mathrm{N}}\left[\mathrm{X}_{\mathrm{ij}}\left(\mathrm{t}_{1}\right)-\overline{\mathrm{X}}_{j} \right]\left[\mathrm{X}_{\mathrm{ij}}\left(\mathrm{t}_{2} \right)-\overline{\mathrm{X}}_{j}\right] COVxj(t1,t2)=N−11i=1∑N[Xij(t1)−Xj][Xij(t2)−Xj]
2 多指标面板数据因子分析的过程(董锋等2009)
2.1 原始数据标准化
标准化公式:
z i j ( t ) = x i j ( t ) − x ˉ j Var ( x j ) z_{i j}(t)=\frac{x_{i j}(t)-\bar{x}_{j}}{\sqrt{\operatorname{Var}\left(x_{j}\right)}} zij(t)=Var(xj)xij(t)−xˉj
2.2 对标准化后的数据建立传统的因子分析模型
针对每个不同的时间点的截面数据,分别对每个时间截面建立因子分析模型(也即有几个时间点,就建立多少个因子分析模型,每个时间截面的因子个数可以不一样)。根据累计贡献率选择因子个数,得到不同时间截面的因子载荷矩阵和因子得分。
2.3 计算因子得分
第 i i i个样本的综合因子得分计算公式:
W
i
=
[
∑
m
=
1
M
ϕ
m
(
t
)
F
m
i
(
t
)
]
/
[
∑
m
=
1
M
ϕ
m
(
t
)
]
\mathrm{W}_{\mathrm{i}}=\left[\sum_{\mathrm{m}=1}^{\mathrm{M}} \phi_{\mathrm{m}}(\operatorname{t}) \mathrm{F}_{\mathrm{m}_{\mathrm{i}}}(\mathrm{t})\right] /\left[\sum_{\mathrm{m}=1}^{\mathrm{M}} \phi_{\mathrm{m}}(\mathrm{t})\right]
Wi=[m=1∑Mϕm(t)Fmi(t)]/[m=1∑Mϕm(t)]
其中,
ϕ
m
(
t
)
\phi_m(t)
ϕm(t)表示第
t
t
t个时间截面上第
m
m
m个因子的贡献率,
F
m
i
(
t
)
F_{mi}(t)
Fmi(t)表示第
t
t
t个时间截面上第
i
i
i个样本的第
m
m
m个因子的因子得分。
2.4 面板数据公共因子总得分
σ m i = ( ∑ t 0 T ϕ m ( t ) F m i ( t ) ) / ( ∑ t 0 T ϕ m ( t ) ) \sigma_{mi} = \left(\sum_{t_0}^{T} \phi_m(t)F_{mi}(t)\right) / \left(\sum_{t_0}^{T} \phi_m(t) \right) σmi=(t0∑Tϕm(t)Fmi(t))/(t0∑Tϕm(t))
2.5 面板数据综合总得分
w ˉ i = ( ∑ t 0 T δ ( t ) W i ( t ) ) / ( ∑ t 0 T δ ( t ) ) \bar{w}_i = \left(\sum_{t_0}^{T} \delta(t)W_i(t) \right) / \left( \sum_{t_0}^{T} \delta(t) \right) wˉi=(t0∑Tδ(t)Wi(t))/(t0∑Tδ(t))
其中, δ ( t ) \delta(t) δ(t)表示第 i i i个样本在第 t t t年数据的因子分析时的方差累积贡献率。
3 多指标面板数据因子分析的分层模型(肖启华等2015)
董锋等2009年在各时间截面上对数据进行了传统因子分析的基础上,以各个截面上提取的因子累计贡献率为权重、对面板数据在各个时间截面上的样本评价值进行加权平均、得到了面板数据综合评分;其在分析过程中虽然没有对面板数据进行压缩,但赋权方法使得各时间截面上的权重值趋于相等,面板数据时间序列价值未得到充分体现。
肖启华等2015年提出了一种同时考虑面板数据指标维度与时间序列价值的分层因子分析模型.该模型的具体思路:
- 模型底层:对各个时间截面数据分别进行传统因子分析,在每一个时间截面:依据设定的因子方差贡献率提取公因子继而生成样本评价函数,然后对样本数据进行评价得到时间截面上的样本评价值向量。
- 模型顶层: 首先按时间顺序排列各截面上的样本评价值向量、形成综合评价矩阵,然后对该矩阵数据进行传统因子分析,同样依据设定的因子方差贡献率提取顶层公因子、以实现对顶层综合评价矩阵的评价。
- 最后结合计算所得的因子得分函数以及底层样本评价函数,推导面板数据公因子及其得分函数,并实现对面板数据的综合评价。
3.1 模型描述
多指标面板数据分层因子模型可以描述为
{ X ⃗ ( t ) = μ ⃗ X ( t ) + A ( t ) F ⃗ ( t ) + ε ⃗ X ( t ) ( t = 1 , 2 , ⋯ , T ) Y ⃗ t = μ ⃗ Y + B G ⃗ + ε ⃗ Y \left\{\begin{array}{l} \vec{X}(t)=\vec{\mu}_{X}(t)+A(t) \vec{F}(t)+\vec{\varepsilon}_{X}(t)(t=1,2, \cdots, T) \\ \vec{Y}_{t}=\vec{\mu}_{Y}+B \vec{G}+\vec{\varepsilon}_{Y} \end{array}\right. {X(t)=μX(t)+A(t)F(t)+εX(t)(t=1,2,⋯,T)Yt=μY+BG+εY
上述公式显示,模型分为两个部分:第一个公式代表每个时间截面上的传统因子分析,主要是对不同时间点上的不同样本的变量相关性进行建模;第二个公式是基于第一步得到的不同截面上的因子得分,主要对不同样本的时间维度上的相关性进行传统因子分析建模。该模型相对于先对变量维度进行建模,然后对时间维度进行建模,较好地反映了变量和时间两个维度之间的相关性,相对而言比董锋等2009年提出的方法更好。
3.2 模型过程
3.2.1 截面传统因子分析建模
在各不同时点以可观测向量观测数据样本协方差阵进行传统的因子分析,估计参数,设定公因子的个数为 m ( t ) m(t) m(t),则有
F k ( t ) = ∑ j = 1 p α k j X j ( t ) ( k = 1 , ⋯ , m ( t ) ) F_{k}(t)=\sum_{j=1}^{p} \alpha_{k j} X_{j}(t)(k=1, \cdots, m(t)) Fk(t)=j=1∑pαkjXj(t)(k=1,⋯,m(t))
然后,以方差贡献率为权重,利用因子得分公式可构造各个截面的样本评价函数:
f ∙ ( t ) = ∑ k = 1 m ( t ) σ k X ( t ) F k ( t ) = ∑ k = 1 m ( t ) ∑ j = 1 p σ k X ( t ) α k j X j ( t ) f_{\bullet}(t)=\sum_{k=1}^{m(t)} \sigma_{k}^{X}(t) F_{k}(t)=\sum_{k=1}^{m(t)} \sum_{j=1}^{p} \sigma_{k}^{X}(t) \alpha_{k j} X_{j}(t) f∙(t)=k=1∑m(t)σkX(t)Fk(t)=k=1∑m(t)j=1∑pσkX(t)αkjXj(t)
其中, f ∙ ( t ) f_{\bullet}(t) f∙(t)表示第 t t t个截面的样本评价函数,将第 t t t个截面中第 i i i个样本的各个指标变量值带入,可得到第 i i i个样本的评价值,同一截面上的所有样本的评价值组成了该截面的样本评价值向量。
3.2.2 面板(时间维度)因子分析建模
根据所有截面的所有样本的评价值向量形成评价矩阵,对评价矩阵在时间维度上进行传统的因子分析建模,探究时间维度上的时间公因子。
G l = ∑ t = 1 T β l t f ∙ ( t ) G_{l}=\sum_{t=1}^{T} \beta_{l t} f_{\bullet}(t) Gl=t=1∑Tβltf∙(t)
G l = ∑ t = 1 T ∑ k = 1 m ( t ) ∑ j = 1 p σ k X ( t ) α k j β l t X j ( t ) G_{l}=\sum_{t=1}^{T} \sum_{k=1}^{m(t)} \sum_{j=1}^{p} \sigma_{k}^{X}(t) \alpha_{k j} \beta_{l t} X_{j}(t) Gl=t=1∑Tk=1∑m(t)j=1∑pσkX(t)αkjβltXj(t)
3.2.3 面板数据评价函数和评价值
由顶层公因子方差贡献率,可构造综合评价矩阵的样本评价函数:
y
∙
=
∑
l
=
1
m
σ
l
Y
G
l
y_{\bullet}=\sum_{l=1}^{m} \sigma_{l}^{Y} G_{l}
y∙=l=1∑mσlYGl
y ∙ = ∑ l = 1 m ∑ t = 1 T ∑ k = 1 m ( t ) ∑ j = 1 p σ l Y σ k X ( t ) α k j β l t X j ( t ) y_{\bullet}=\sum_{l=1}^{m} \sum_{t=1}^{T} \sum_{k=1}^{m(t)} \sum_{j=1}^{p} \sigma_{l}^{Y} \sigma_{k}^{X}(t) \alpha_{k j} \beta_{l t} X_{j}(t) y∙=l=1∑mt=1∑Tk=1∑m(t)j=1∑pσlYσkX(t)αkjβltXj(t)
上式可以实现对层次模型中面板数据的评价,故为面板数据评价函数,将各个面板数据带入评价函数即可得到每个样本的评价值。
3.2.4 实施步骤
- 面板数据指标变量进行全局标准化;
- 对各个时间节点逐一实现截面数据的正交因子分析,包括因子分析的适用性检验,构造因子变量,计算因子方差贡献率,确定因子载荷,确定因子得分公式,构造截面数据样本评价函数,对截面数据进行评价形成截面样本评价值向量。
- 顶层因子分析。包括生成综合评价矩阵,顶层因子的适用性检验,构造顶层因子,构造综合评价矩阵的样本评价函数。
- 合成面板数据公因子、面板数据评价函数,对面板数据进行评价。