1.因子分析简介
因子分析(factor analysis)是一种数据简化的技术,通过变量之间的公共因子来表示其基本的数据结构,公共因子能够反映原来众多变量的主要信息。
因子分析与主成分分析的区别:
(1)主成分分析仅仅是变量变换,而因子分析需要构造因子模型;
(2)因子分析: 潜在的假想变量和随机影响变量的线性组合表示原始变量;
(3)主成分分析:原始变量的线性组合表示新的综合变量,即主成分。
2.因子分析案例
脚本:
import pandas as pd
from sklearn.decomposition import FactorAnalysis
#读取数据
df=pd.read_table(filepath_or_buffer=r'org_data.txt',sep=r'|')
(1)第一步 数据标准化(归一化)
X_scaler = StandardScaler()
x = X_scaler.fit_transform(df)
(2)第2步 因子分析
fa = FactorAnalysis(n_components=4)
fa_fit = fa.fit_transform(x)
(3)第3步 输出相关信息
#因子模型方程参数
fa.components_
得到x1的因子方程为:
-0.42368198x1-0.54152253x2-0.71644766x3-0.96050785x4+0.34953776x5+0.09449389x6+0.2680033x7 + 0.11920987x8-0.15684324x9
其他x2至x9类推
#样本数据的因子得分
fa_fit
#给出部分
#因子方差估计
fa.noise_variance_