因子分析(factor analysis)包括两种:R型因子分析,Q型因子分析。一般讨论R型因子分析
数学模型
R型因子分析
$X=AF+\epsilon$
其中,
\(A=\left (\begin{array}{}
a_{11}&a_{12}...&a_{1m}\\
a_{21}&a_{22}...&a_{2m}\\
...\\
a_{p1}&a_{p2}...&a_{pm}
\end{array}\right)=(A_1,A_2,...A_m)\)
并且满足:
- $m \leq p$
- $Cov(F,\epsilon)=0$,即公共因子和特殊因子不相关
- \(D(F)=\left (\begin{array}{} 1\\&1\\&&...\\&&&1 \end{array}\right)\),即公共因子之间不相关且方差为1
- \(D(\epsilon)=\left (\begin{array}{} \sigma_1^2\\&\sigma_2^2\\&&...\\&&&\sigma_p^2 \end{array}\right)\),即特殊因子不相关,但方差不要求相等
模型中的$a_{ij}$称为 载荷
Q型因子分析
$X_i=a_{i1}F_1+a_{i2}F_2+…+a_{im}F_m +\epsilon_i,i=1,2,…n$
与R型不同的是,这里的$X_i$表示一个样本。
性质
性质1
$cov(X_i,F_j)=a_{ij}$
如果X做过标准化,那么:
相关系数为$\rho(X_i,F_j)=a_{ij}$
性质2
记$h_i^2=\sum\limits_{j=1}^m a_{ij}^2$
得到$D(X_i)=h_i^2+\sigma_i^2$
如果X做过标准化,那么$1=h_i^2+\sigma_i^2$
也就是说,$X_i$的方差有两部分组成:共同度 $h_i^2$,个性方差 $\sigma_i^2$
性质3
$g_j^2=\sum_{i=1}^p a_{ij}^2$称为公共因子$F_j$对$X$的贡献,
其意义是公共因子$F_j$对X各个变量所提供的方差贡献的总和,
它是衡量一个公共因子相对重要性的一个尺度
因子旋转
$\Gamma $是正交阵,那么对$A \Gamma$, 对应的公共因子是$\Gamma^T F$
这样的$\Gamma$可以有很多种,我们选用最大方差旋转法
Python实现
大图见于这里
大图见于这里