第 28 课:统计分析(四)探索性因子分析(EFA)
🎯 核心实操目标
学习目标:掌握 EFA 完整流程——KMO + Bartlett 前提检验 / 因子提取方法选择 / 因子旋转 / 载荷表解读 / 交叉载荷处理。本课你将用 Case A 的 AI 焦虑 12 题数据跑出符合理论预期的三因子结构(认知/情感/回避),并理解何时用 EFA 何时用 CFA。
📋 课前准备(5 分钟自检)
工具/账号
- [ ] Jamovi 2.5+(Factor 模块)
- [ ] 第 23 课清洗后数据,反向题已反转
数据/素材
- [ ] AI 焦虑 12 题(已反转 Anxiety_4_R)
- [ ] 样本量 N ≥ 200(EFA 经验法则:N ≥ 题数 × 10–20)
应急通道
- KMO < .60 → 数据不适合做 EFA,回头检查量表设计
- 跑不出预期维度 → 用 Promax 旋转替代 Varimax,或调整因子数
场景导入:12 道题的背后,藏着几个看不见的维度?
你的问卷有 12 道焦虑题,每个被试给出 12 个分数。直接面对这 12 列数字,很难说清它们到底在测几样东西——题与题之间相关性彼此纠缠:答"我担心不会用 AI 影响成绩"高分的人,往往在"想到要用 AI 就紧张"上也答高分。探索性因子分析(EFA)回答的正是这个问题:这 12 道高度相关的题,背后能不能归纳为少数几个看不见的「潜在维度」(即「因子」)?
一个生活化的类比:12 道题像一个公司里 12 名员工,表面上各做各的,但他们其实分属 3 个部门(认知焦虑 / 情感焦虑 / 行为回避)。EFA 做的事,就是只看"谁和谁的工作高度联动",反推出这 3 个部门的存在,并判断每名员工主要归哪个部门。
在这个类比里,本课两个最关键的判据各自对应一句话:KMO > 0.8 表示"这批题之间确有足够的共同关联,值得去找潜在维度";因子载荷 > 0.4 表示"这道题确实主要由某个因子驱动、归属清晰"。
一句话先记住:EFA 用题与题之间的相关,反推出题目背后的少数潜在因子——它是"从数据里发现结构",而不是"验证你预设的结构"(后者是 CFA,本课末尾会讲清两者分工)。
🗺️ 架构重组:EFA 完整流程
Step 1: 前提检验 KMO ≥ .60 + Bartlett 球形检验 p < .05
↓
Step 2: 因子提取 主成分分析(PCA) 或 主轴因子(PAF)
↓
Step 3: 决定因子数 特征值 > 1 / 碎石图拐点 / 理论预期
↓
Step 4: 因子旋转 Varimax(正交) 或 Promax(斜交)
↓
Step 5: 载荷解读 载荷 > .4 才算"归属"
↓
Step 6: 交叉载荷处理 删题或归入高载荷因子原理:EFA 在测什么、为什么这样做、前提是什么
在按按钮跑 EFA 之前,先把它的逻辑想清楚——这能让你看懂输出、也能在结果异常时知道该查哪里。可以从四个角度理解。
它在测什么——用题项间的相关,推断少数看不见的「共同来源」。 EFA 的出发点是一张题项间相关矩阵:12 道题两两之间有多相关。它的核心假设是,这些相关并非凭空产生,而是被少数潜在因子(latent factor)驱动的——同属"认知焦虑"的几道题之所以一起高、一起低,是因为背后有一个共同的"认知焦虑"维度在拉动它们。EFA 要做的,就是反过来:从可观测的相关,估计出这些不可观测的因子有几个、每道题受哪个因子影响多大。它本质上是一种降维——把 12 列彼此重叠的信息,压缩成 3 个更精炼、可解释的维度。
为什么这样做——结构效度的实证依据,且要在共同方差上做。 量表声称"测了认知/情感/回避三个维度",这只是设计者的主张;EFA 提供结构效度(construct validity)的实证检验:数据里题目的聚合方式,是否真的支持这个维度划分(第 27 课把结构效度的实证手段正是指向本课)。这里有一个容易被忽略却很重要的区分:心理学量表分析推荐用主轴因子法(PAF)而非主成分分析(PCA),因为前者只对题目间的共同方差(公因子方差)建模,把每道题的"特异性 + 测量误差"剔除在外;这与"我们相信题目背后存在共同潜变量"的理论立场一致。PCA 则把全部方差(含误差)一并降维,严格说不是因子模型。
前提假设——四条,缺一会让结果不可信。 EFA 不是对任何数据都成立,跑之前它默认:① 变量间确有足够相关(否则无共同因子可提——这正是 KMO 与 Bartlett 要检验的);② 样本量足够(经验法则题项数 × 10–20,与第 21 课一致;但倍数只是起点,真正的充分性还取决于因子载荷与共同度高低,载荷高、共同度高时较小样本也稳);③ 题项为连续或可近似连续的等距测量(5 点及以上 Likert 量表通常按连续处理,二分/三分类题更适合用多分相关矩阵的专门方法);④ 变量间是线性相关(因子模型建立在皮尔逊相关之上)。
常见误用——把"探索"当"验证"、把命名当发现。 最常见的三类误用:其一,已有明确理论维度却仍只做 EFA 就下"结构效度成立"的结论——EFA 是探索性的,让数据自己说话,严格验证一个预设结构应当用 CFA(见拆解实战 F);其二,只看特征值 > 1 一个标准就定因子数(Kaiser 准则系统性高估因子数,须与碎石图、理论三者交叉);其三,因子命名当成客观发现——因子是统计构造,名字("认知焦虑")是研究者根据其下高载荷题项的共同内涵主观赋予的,不同人可能命名不同,命名本身不构成证据。
📘 关键术语(首次出现,先对齐定义)
- 因子 / 潜在因子(factor / latent factor):不可直接观测、被假设为驱动多个题项共同变化的潜在变量(如"认知焦虑")。EFA 的目标就是估计因子的个数及其与各题项的关系。
- 因子载荷(factor loading):某题项与某因子之间的关联强度,可理解为"该因子能在多大程度上解释这道题的变异",取值通常在 −1 与 1 之间。经验阈值 |载荷| > .40 才视为该题对该因子有实质归属(.50 以上更稳)。
- 共同度(communality, h²):一道题的变异中,能被所有保留因子共同解释的比例(0–1)。共同度高(如 > .40–.50)说明这道题被因子结构"接住"了;过低说明它游离于结构之外,可考虑删除。
- 特征值(eigenvalue):一个因子所解释的总方差量。Kaiser 准则保留特征值 > 1 的因子(含义:该因子解释的方差多于单独一道标准化题项),但此法常高估因子数。
- KMO(Kaiser-Meyer-Olkin 取样适切性量数):衡量变量间是否有足够的公共相关、适合做因子分析的指标(0–1,越大越好)。本课判据见下表,总体 KMO ≥ .60 是底线。
- Bartlett 球形检验(Bartlett's test of sphericity):检验"相关矩阵是否为单位阵"(即变量间两两不相关)的假设。p < .05 表示拒绝该假设、变量间存在相关,可以做 EFA。
- 碎石图(scree plot):把各因子的特征值由大到小画成折线,用其"拐点"(陡降转平缓处)辅助判断该保留几个因子。
- 因子旋转(rotation):在不改变拟合优度的前提下旋转因子轴,使载荷向"每题只在一个因子上高、其余接近 0"的简单结构靠拢,便于解读与命名。分正交旋转(orthogonal,如 varimax,假设因子间不相关)与斜交旋转(oblique,如 oblimin / promax,允许因子间相关)两类。
- 简单结构(simple structure):理想的载荷模式——每道题在唯一因子上高载荷、在其余因子上接近 0;旋转的目的就是逼近它。
- 交叉载荷(cross-loading):一道题在两个及以上因子上载荷都较高(如均 > .40 且差值 < .10),归属不清,需处理(见拆解实战 E)。
- 海伍德情形(Heywood case):估计出的共同度 ≥ 1(或出现负的误差方差)的异常结果,提示模型设定有问题(如因子数过多、样本过小、变量近乎共线),不能直接采用。
💡 一句话锚定
EFA = 从题项间相关里反推少数潜在因子。KMO/Bartlett 回答"该不该做",特征值/碎石图/理论回答"提几个",旋转后的载荷表回答"每题归哪个、归得清不清楚"。全程它只是在"发现"结构,要"验证"某个预设结构,请用 CFA。
🚀 拆解实战 A:Step 1 前提检验
Jamovi 操作
- Factor → Exploratory Factor Analysis
- Variables: 拖入 Anxiety 12 题(含反转后的 Anxiety_4_R)
- 在 Assumption Checks 中勾选:
- KMO measure of sampling adequacy
- Bartlett's test of sphericity
判断标准
| KMO | 评估 |
|---|---|
| ≥ .90 | 极好 |
| .80 – .89 | 很好(理想) |
| .70 – .79 | 中等 |
| .60 – .69 | 平庸(可勉强用) |
| < .60 | 不适合做 EFA |
Bartlett 球形检验:p < .05 → 可以做 EFA(说明变量间确实存在相关,相关矩阵不是单位阵)。
📐 Case A 实测(前提通过)
对 Anxiety 12 题跑前提检验,得 KMO = .87(落在 .80–.89"很好"档)、Bartlett's χ²(66) = 1842.34,p < .001。两项都过关,数据适合做 EFA——这两个数字稍后会原样写进拆解实战 G 的 APA 报告段。注意一个统计细节:Bartlett 检验对样本量极敏感,N 较大时几乎总会显著(p < .001 是常态),所以它只是"门槛"而非"质量保证";真正衡量"适不适合"的主力是 KMO,二者要一起看,不能只凭 Bartlett 显著就放心。
🚀 拆解实战 B:Step 2 因子提取方法
| 方法 | 适用 |
|---|---|
| 主成分分析(PCA) | 数据降维,不区分公共方差 vs 误差 |
| 主轴因子(PAF) | 假设存在公共潜变量,更符合心理学量表分析 |
| 最大似然(ML) | 需正态性假设,可做 CFA 衔接 |
Jamovi 默认主轴因子——心理学/教育学场景推荐。
🚀 拆解实战 C:Step 3 决定因子数
三种判断方法(建议综合使用):
① 特征值 > 1 法(Kaiser 准则)
每个特征值 > 1 的因子保留。 问题:常常高估因子数。
② 碎石图(Scree Plot)
寻找"拐点"(线条从陡降变平缓的点)。 最直观——拐点之前的因子数即为推荐数。
③ 理论预期
如果量表本就按 k 个维度设计、且 EFA 结果与之吻合,提取 k 个因子是有依据的。注意:这不是"想要几个就设几个"——理论只是三条线索之一,必须与碎石图、特征值给出的证据相互印证;若数据明显支持 2 个或 4 个因子,应当尊重数据并重新审视理论,而非硬塞成 3 个。
💡 Case A 应该跑出 3 因子
Anxiety 12 题是按"认知 / 情感 / 回避"三维设计的, 理论 + 碎石图拐点 + Kaiser 准则三者应该都指向 3 因子——三条独立线索同时收敛到 3,才是"3 因子结构成立"的有力证据。
📐 更稳的判据:平行分析(parallel analysis)
Kaiser 准则(特征值 > 1)会系统性高估因子数,碎石图的"拐点"又常带主观。方法学上更受推荐的是平行分析:把你的特征值与"同等规模随机数据"的特征值逐一比较,只保留实际特征值高于随机基准的因子。Jamovi 的 EFA 模块在"Number of Factors"里就内置了 Parallel analysis 选项,建议作为定因子数的主判据,再与碎石图、理论交叉确认。本课为教学清晰仍以"特征值 + 碎石图 + 理论"三者收敛叙述,实战中优先用平行分析更稳。
🚀 拆解实战 D:Step 4 因子旋转
旋转的目的只有一个:在不改变模型对数据的拟合程度的前提下,把载荷"摊"成更易解读的简单结构(每题只在一个因子上高、其余接近 0),方便给因子命名。
| 方法 | 类型 | 适用 |
|---|---|---|
| Varimax | 正交(orthogonal) | 假设因子间互相独立,旋转后因子两两不相关;结果表最干净 |
| Oblimin / Promax | 斜交(oblique) | 允许因子间相关;心理学/教育学的维度(如认知 vs 情感焦虑)通常本就相关,理论上更贴合 |
💡 正交还是斜交?按"因子该不该相关"来选,并如实报告
判断标准不是"哪个表好看",而是你的因子在理论上是否应当相关:
- 认知焦虑、情感焦虑、行为回避三者本属同一上位构念、彼此相关,因此严格地说斜交旋转(oblimin/promax)更符合理论。斜交旋转会额外给出因子间相关矩阵——若各因子相关都很低(如 < .2),说明用正交也无妨,可回退到 varimax 以求表格简洁;若相关明显(如 > .3),就应保留斜交结果并报告因子间相关。
- 实操路径:可先用 varimax 看清结构、确认每题归属,再用 oblimin 核对因子间相关与命名是否稳定。无论最终用哪种,论文里必须写明所用的旋转方法(本课 worked example 与 APA 报告示范的是 varimax,相应地正文已注明"Varimax 正交旋转")。
- 一个常见误区:把"正交"当默认、从不报告、也从不检查因子是否真的不相关——这会在因子确有相关时低估它们之间的关系。
🚀 拆解实战 E:Step 5–6 载荷表解读
Jamovi 操作
- 设置好提取方法 + 旋转 + 因子数
- 在 Factor Loadings 中勾选 Hide loadings below:
0.40 - 跑出旋转后载荷表
期望的清晰载荷模式(Case A)
═══════════════════════════════════════════════
Factor 1 Factor 2 Factor 3
(认知) (情感) (回避)
───────────────────────────────────────────────
Anxiety_1 .72 (认知)
Anxiety_2 .75 (认知)
Anxiety_3 .68 (认知)
Anxiety_4R .65 (认知反向)
Anxiety_5 .71 (情感)
Anxiety_6 .73 (情感)
Anxiety_7 .69 (情感)
Anxiety_8 .74 (情感)
Anxiety_9 .70 (回避)
Anxiety_10 .72 (回避)
Anxiety_11 .68 (回避)
Anxiety_12 .71 (回避)
───────────────────────────────────────────────
Variance % 16.2% 15.8% 14.5% 累计 46.5%
═══════════════════════════════════════════════表里把 .40 以下的载荷隐藏了(勾选了 Hide loadings below 0.40),所以每行只剩一个数——这恰恰是"简单结构"的样子。
Anxiety_4R用的是已反转的版本:它在第 23 课被重编码为Anxiety_4_R = 6 − Anxiety_4,反转后与同维其他题同向,才会和Anxiety_1/2/3一起落在因子 1(认知)上。反向题若忘了反转,它的载荷会变成负号或干脆掉到 .40 以下,破坏整张表——这是 EFA 阶段最常见的"假结构破坏者"。
📐 Worked Example:这张载荷表逐项怎么读
不要把载荷表当"对了就过"的装饰,要能把它翻译成结论。以 Case A 为例:
- 逐行看归属:
Anxiety_1在因子 1 上载荷 .72、在因子 2/3 上均 < .40(被隐藏),说明它几乎只被"认知焦虑"这个因子驱动,归属清晰。12 道题每一行都如此——这就是"三因子结构清晰、无交叉载荷"的含义。 - 逐列看因子:因子 1 下高载荷的是
Anxiety_1/2/3/4R,它们内容上都关于"担心能力不足、怕影响成绩",于是把因子 1 命名为"认知焦虑";因子 2(Anxiety_5–8,关于紧张、心慌等情绪)命名"情感焦虑";因子 3(Anxiety_9–12,关于回避、拖延使用)命名"行为回避"。命名是研究者依据题项共同内涵赋予的,不是软件给的。 - 看解释方差:三个因子分别解释约 16.2% / 15.8% / 14.5%,累计 46.5%。社科量表 EFA 累计解释方差达到 40%–50% 即属可接受,46.5% 在合理范围(这一比例不是越高越好,过高反而可能提示题项冗余)。
- 顺手看共同度(communality):Jamovi 会同时给出每题的共同度 h²。本例各题载荷 .65–.75,对应共同度大致在 .42–.56,说明每道题约有四到五成的变异被三因子结构解释、没有题目"游离在外"。若某题共同度过低(如 < .30),即便它勉强落在某因子,也提示它与整体结构关系弱,应考虑删除。
交叉载荷处理
理想的简单结构里每题只归一个因子。但实际数据常出现交叉载荷(cross-loading)——一道题在两个因子上载荷都 > .40。判定与处理:
- 判定:看该题在两个因子上的载荷差值。若差值 < .10(如某题在因子 1 上 .45、因子 2 上 .42),归属不清,是真正的"骑墙题"。
- 处理(按稳健性排序):① 删除该题最稳妥,尤其当删后量表内容仍覆盖完整、且信度(Cronbach's α)不明显下降时;② 若内容上不可或缺,保留在载荷更高的那个因子,但前提是两载荷差值 > .10、且有理论依据;③ 删题后须重跑 EFA——少一道题,整个载荷结构可能重排,不能删完就直接用旧表。
- 与信度联动:删题决策不要只看 EFA。回到第 27 课的
α if item dropped:若删去交叉载荷题后该维度 α 反而上升或基本不变,删除就更有底气。EFA(结构)与信度(一致性)要合起来判断,而非各自为政。
🚀 拆解实战 F:EFA vs CFA 选择
一句话区分:EFA 是"不预设结构、让数据告诉你有几个因子、每题归谁";CFA(验证性因子分析,confirmatory factor analysis)是"先写死一个结构(哪几题归哪个因子),再检验数据与这个结构拟合得好不好"(看 χ²/df、CFI、TLI、RMSEA 等拟合指标)。前者发现,后者验证。
| 何时用 EFA | 何时用 CFA |
|---|---|
| 新编量表,没有先验维度假设 | 已有理论确定维度结构,要验证 |
| 跨文化适应(中国版 vs 美国版),结构可能变 | 重复别人成熟量表,验证在本样本是否适配 |
| 探索性研究:有几个因子未知 | 确认性研究:报告 CFA 模型拟合指标 |
Case A 严格说应当用 CFA(量表本就按认知/情感/回避三维设计,是"已有结构待验证"),本课用 EFA 只为教学演示完整流程。研究生学位论文的常见做法,是先做 EFA"看维度结构是否如预期浮现",再做 CFA"正式验证拟合"。
⚠️ 关键纪律:别在同一份数据上又 EFA 又 CFA 就宣称"验证通过"
EFA 是贴着这份数据找出最契合的结构;如果转头又用同一份数据做 CFA,等于"自己出题自己答",拟合好是必然的,并不能算独立验证。规范做法有两种:① 随机折半——把样本随机分两半,一半做 EFA 探索结构、另一半做 CFA 验证;② 在新收集的独立样本上做 CFA。本课程不强制做到 CFA(属进阶),但你要知道:"EFA 跑出漂亮的三因子"本身只是探索证据,不等于"结构效度已被验证"——这条边界下文【边界与局限】还会强调。
🚀 拆解实战 G:报告(APA)
为检验 AI 学习焦虑量表的结构效度,本研究对 12 个题项进行了
探索性因子分析(EFA)。前提检验显示, KMO = .87, Bartlett's
球形检验 χ²(66) = 1842.34, p < .001, 数据适合做因子分析。
采用主轴因子法提取因子, Varimax 正交旋转。基于特征值 > 1 与
碎石图拐点, 共提取 3 个因子, 累计解释方差 46.5%。
旋转后载荷表显示三因子结构清晰: Factor 1 由 Anxiety_1-4
组成(载荷 .65-.75), 命名为"认知焦虑"; Factor 2 由 Anxiety_5-8
组成(载荷 .69-.74), 命名为"情感焦虑"; Factor 3 由 Anxiety_9-12
组成(载荷 .68-.72), 命名为"行为回避"。无显著交叉载荷(均 < .30)。
(详见表 4)让 AI 把你的 EFA 输出翻译成报告段(它只翻译,不代算)
上面这段报告里的每一个数字——KMO、χ²、自由度、p、因子数、解释方差、载荷范围——都来自你在 Jamovi 里亲手跑出的输出。AI 的角色是把这些已算好的结果组织成规范段落,绝不重新计算、不改动任何数值、更不允许凭空"估"一个。
【角色】APA 第七版格式严谨的论文方法/结果编辑。
【任务】下面是我用 Jamovi 跑出的 EFA 完整输出(KMO/Bartlett、解释方差、
旋转后载荷表,原样粘贴)。请据此撰写约 200 字的"探索性因子分析"结果段,须含:
1. 前提检验:报告 KMO 与 Bartlett 球形检验(χ²、自由度、p)。
2. 提取与旋转:写明提取方法(主轴因子)与旋转方法(如 Varimax),并说明定因子数的依据。
3. 因子数与累计解释方差。
4. 逐因子说明:各因子由哪几题组成、载荷范围,并给出我已确定的命名。
5. 交叉载荷情况。
【严格约束】
- 只能使用我粘贴的数字,逐字照搬;严禁改动、四舍五入到不同位数或自行补算任何统计量。
- APA 写法:相关/载荷/p 等小于 1 的值不写前导 0(写 .87 不写 0.87);p < .001 照此格式。
- 因子命名以我提供的为准,不得自行重命名。
- 任何你不确定的数字,留空并提示"此处需作者填入",不得编造。
【粘贴 Jamovi 输出】[在此粘贴]EFA 结果段:写砸 vs 写好
| 维度 | 写砸 ❌ | 写好 ✅ | 为什么 |
|---|---|---|---|
| 前提交代 | 数据适合做因子分析 | KMO = .87、Bartlett's χ²(66)=1842.34, p<.001,适合做因子分析 | "适合"是结论,必须给出支撑它的 KMO 与 Bartlett 数值 |
| 方法透明 | 做了因子分析,提取 3 个因子 | 采用主轴因子法、Varimax 正交旋转;据特征值>1、碎石图与理论提取 3 个因子 | 不写提取/旋转方法,结果无法复现;审稿人首先就问这两项 |
| 因子命名 | 得到 3 个因子 F1/F2/F3 | F1 由 Anxiety_1–4 组成(载荷 .65–.75),命名"认知焦虑"…… | 因子要落到内容上命名,并交代题项与载荷范围,否则读者不知道每个因子是什么 |
| 结构质量 | 结构很好 | 三因子结构清晰、无显著交叉载荷(均<.30),累计解释方差 46.5% | "很好"不可检验;用交叉载荷、解释方差等具体证据说话 |
| 效度措辞 | EFA 验证了量表的结构效度 | EFA 结果支持预期的三因子结构,为结构效度提供了初步证据 | EFA 是探索性证据,"验证"应留给 CFA;措辞越界是常见硬伤 |
跨案例迁移:把 EFA 用到一份"维度未知"的新量表
前面 Case A 是已知三维结构、拿 EFA 来"看它是否如期浮现"。EFA 真正的主场其实是维度未知时——下面用一个紧扣课程数据的延伸场景演示同一套流程怎么走、以及结果不理想时的样子。
场景:你想从 Case A 的 Strategy_1..8(学习策略 8 题)出发,探索这 8 道策略题背后到底有几个维度。与 Anxiety 不同,假设你这次没有现成的理论维度划分,要让数据说话。
📐 Worked Example:Strategy 8 题的 EFA 走查(含两种可能结局)
流程完全照搬 Case A,只是题目换成 Strategy_1..8:
- 前提检验:跑 KMO 与 Bartlett。Strategy 量表整体信度高(Cronbach's α≈.88,来自第 27 课),题项间相关充分,KMO 通常能过 .80、Bartlett p<.001,前提成立。
- 定因子数:这一步最关键,因为没有理论替你兜底。优先看平行分析 + 碎石图。可能出现两种结局——
- 结局甲(单因子):若 8 道题高度同质(彼此相关都不低),平行分析可能只支持 1 个因子,碎石图在第 2 个特征值后就陡然走平。结论:"学习策略"在本样本是单维构念,8 题测同一件事——这与它 α 高达 .88 也吻合(α 高本就常见于单维量表)。此时不要为了"多几个因子好看"硬提取 2 个。
- 结局乙(双因子):若题目内容本可分"认知策略 vs 资源管理策略"两簇,平行分析可能支持 2 个因子,载荷表呈两列清晰归属。则据题项内涵分别命名,并报告两因子。
- 无论哪种结局,纪律一致:让平行分析/碎石图/可解释性共同决定因子数,绝不能因为"想要某个数"就调参凑结果;提取后同样要检查载荷>.40、共同度、交叉载荷,再据题项命名。
这个例子的要点:EFA 的价值正在于"不知道有几个维度时帮你发现"。Case A 是用它确认已知结构,本例是用它探索未知结构——同一套按钮,结论可能是"1 个因子",也可能是"2 个",由数据定,不由你定。
🔁 迁移要点
对比两个例子:变的只是题目(Anxiety 12 题 ↔ Strategy 8 题)和"是否已有理论维度";EFA 的六步骨架(前提检验→提取→定因子数→旋转→读载荷→处理交叉载荷)一字未变。换到任何学科的多题量表都照搬——经管的"营商环境感知量表"、教育的"教师效能感量表"都一样,把题项换成你的、把命名交给内容即可。唯一不变的红线:因子数与载荷由数据和软件给出,你负责解释和命名,AI 只负责把结果翻译成文字。
常见误区与纠正
EFA 阶段学员的问题高度集中在"前提没看 / 因子数乱定 / 反向题没处理 / 把探索当验证"。下表对号入座即可:
| 常见误区 | 症状(会怎样) | 纠正方法 |
|---|---|---|
| 不看 KMO/Bartlett 就直接提因子 | 在本不该做 EFA 的数据上硬跑,结构混乱 | 先看前提:KMO≥.60(最好≥.80)、Bartlett p<.05;KMO 过低回头查量表设计 |
| 只靠特征值>1 定因子数 | Kaiser 准则高估,提出一堆碎因子 | 用平行分析为主,碎石图 + 理论交叉确认;三者收敛才可信 |
| 反向题没反转就进 EFA | 该题载荷变负号或掉到 .40 以下,破坏结构 | 回第 23 课确认 Anxiety_4_R=6−Anxiety_4 已执行;用反转后版本入模 |
| 正交旋转当默认、从不报告 | 因子本相关却被当独立,低估因子间关系 | 因子理论相关时用斜交(oblimin/promax)并报告因子间相关;无论用哪种都写明旋转方法 |
| 交叉载荷视而不见 | 骑墙题留在表里,归属不清、命名牵强 | 看两载荷差值<.10 即判交叉;删题或归高载荷因子,删后重跑 EFA |
| 因子命名当客观发现 | 把"认知焦虑"当数据证明的事实 | 命名是研究者依题项内涵主观赋予,需说明依据,不作为证据 |
| EFA 跑通就说"结构效度已验证" | 把探索性证据当成验证 | EFA 是探索;严格验证用 CFA,且最好折半或换独立样本 |
| 把数据丢给 AI 让它"做因子分析" | 得到看似合理实则编造的 KMO/载荷 | 所有统计量在 Jamovi 亲手跑;AI 只翻译你粘贴的输出(见红线) |
结果不理想 / 跑出错?分类排查
EFA 跑完,常见三类"不对劲":前提就没过、跑不出预期维度、软件报错或出现异常值。逐类对症,不要盲目调参或推倒重来。
- KMO 太低 / Bartlett 不显著 → 问题在量表或样本,不在按钮。 KMO<.60 说明题项间缺乏足够公共相关——多半是量表设计问题(题目测的是彼此无关的东西),或样本量过小。先回查量表与样本,而非反复换提取方法。某个变量的"个体 KMO"特别低时,可考虑剔除该题再跑。
- 跑不出预期的因子数 / 结构混乱 → 按顺序排查,别先怪方法。
- 先查反向题:反向题忘反转是头号元凶,会让该题载荷反号、整张表错位——回第 23 课核对
Anxiety_4_R。 - 再查因子数判据:是不是只用了特征值>1?换平行分析重定因子数往往就清楚了。
- 再查旋转:因子本相关却用了正交,载荷会"摊不开";改用斜交(oblimin)看是否更清晰。
- 最后才考虑删题:对共同度过低(<.30)或严重交叉载荷的题,删除并重跑——记住每次删题后结构都会变。
- 先查反向题:反向题忘反转是头号元凶,会让该题载荷反号、整张表错位——回第 23 课核对
- 软件报错 / 出现海伍德情形(共同度≥1 或负误差方差)→ 模型设定过头了。 这通常意味着因子数设得过多、样本量相对题数过小、或存在近乎共线的题。应对:减少提取的因子数、检查是否有内容几乎重复的题项、必要时扩大样本。绝不能强行采用一个出现海伍德情形的解并当作正常结果报告。
一句话
首版不理想,先分清是前提问题(查量表/样本)、结构问题(先查反向题,再调因子数与旋转)、还是设定问题(海伍德情形→减因子/查共线)。无论哪种,红线不变:因子由数据和软件定,AI 只翻译,绝不代算或凑数。
边界与局限:EFA 与 AI 在这一步的能与不能
EFA 是"发现量表潜在结构"的有力工具,但它的能力边界和 AI 的角色都必须划清。下面几条比多记一个阈值更重要。
| 边界 / 失效场景 | 为什么会这样 | 你应该怎么做 |
|---|---|---|
| EFA 是探索,不是验证 | 它贴着当前数据找最契合的结构,天然"过拟合"这份样本 | 要验证预设结构用 CFA,且最好折半或用独立样本;EFA 漂亮≠结构效度已被验证 |
| 因子命名是主观的 | 因子是统计构造,名字由研究者据题项内涵赋予 | 命名要交代依据;不同命名可并存,命名本身不构成证据 |
| 倍数法则不保证样本充分 | "题数×10–20"只是起点,真正取决于载荷与共同度高低 | 载荷/共同度高时小样本也稳,低时再大也未必够;结合实际载荷判断(呼应第 21 课) |
| 解释方差不是越高越好 | 累计解释方差过高可能源于题项冗余/内容重复 | 社科 40%–50% 即可接受;异常高时反查是否有近乎重复的题 |
| 相关结构 ≠ 因果、≠ "真实存在的心理实体" | EFA 只刻画题项相关的归纳结构,不证明因子是客观心理实体 | 把因子当"对数据的简约描述",对其实在性的主张要谨慎、靠理论支撑 |
| 横断面数据慎言因果与稳定性 | Case A 是一次性横断面问卷,EFA 只反映此刻此样本的结构 | 结构是否跨时间/跨人群稳定,需另收数据或纵向验证,不能由单次 EFA 外推 |
| AI 只能翻译,不能代算 | 大模型不接入你的数据、不做可信计算,让它"算 KMO/载荷"只会得到看似合理实则编造的数字(幻觉 hallucination) | 所有统计量在 Jamovi/SPSS 亲手跑;AI 仅把你粘贴的输出转写成规范段落 |
⚠️ 本课红线:AI 翻译结果,绝不代算统计量
贯穿整个量化模块的硬规则放到 EFA 同样成立:KMO、Bartlett 的 χ²、特征值、因子载荷、共同度、解释方差——一律由你在统计软件里算出,AI 的唯一职责是把这些已经算好的数字翻译成符合 APA 的中文段落。任何时候 AI 给出的数字、因子数或载荷与你的软件输出不一致,以软件输出为准,并视为 AI 出错。把"算"留给软件、把"命名与解释"留给自己、把"写"交给 AI——三者不可混淆。
📦 本课交付物
按本节实操任务完成并提交以下内容,提交 AI 初审,按 Module_Rubrics.md 对应维度评分:
- [ ] KMO 和 Bartlett 检验结果:含具体数值(KMO、χ²、df、p)
- [ ] 碎石图 / 平行分析结果(PNG/PDF):标注拐点或保留因子数
- [ ] 旋转后因子载荷表:APA 格式三线表,注明提取与旋转方法
- [ ] EFA 报告段落(约 200 字):含完整流程描述 + 三因子命名,AI 辅助翻译 + 人工逐一比对数字
- [ ] 四维质检记录:用
Course_QA_Checklists.md(事实/逻辑/格式/引用)核查 AI 段落,重点查"数字是否被改动、是否把 EFA 说成已验证结构效度" - [ ] 沉淀模板:将本课 EFA 流程清单与翻译 Prompt 加入个人工具箱
🏁 本章小结
把本课凝练成可据以复习的几条要点:
- EFA 在做什么:用题项间相关反推少数潜在因子,是一种降维,也是结构效度的实证探索手段。心理学量表推荐主轴因子法(PAF)(建模共同方差),区别于把全部方差降维的 PCA。
- 六步骨架:前提检验(KMO≥.60 且最好≥.80、Bartlett p<.05)→ 提取(主轴因子)→ 定因子数(平行分析为主,碎石图 + 理论交叉)→ 旋转(正交 varimax / 斜交 oblimin,按因子是否相关选并报告)→ 读载荷(|载荷|>.40 归属、看共同度与解释方差)→ 处理交叉载荷(差值<.10 判骑墙,删题须重跑)。
- 关键术语要精确:因子(factor)、因子载荷(loading)、共同度(communality)、特征值(eigenvalue)、KMO、Bartlett 球形检验、碎石图(scree plot)、旋转(rotation,正交/斜交)、简单结构、交叉载荷、海伍德情形——读输出不是抄表,而是把每个数翻译成关于这份量表的一句话。
- 跨案例可迁移:Case A 用 EFA 确认已知三维结构,Strategy 8 题用 EFA 探索未知维度(可能是 1 个或 2 个因子)——同一套六步骨架,因子数由数据定,命名靠内容。
- 边界要诚实:EFA 是探索不是验证(验证用 CFA、最好折半/换样本);因子命名是主观的;倍数法则不保证样本充分;横断面数据慎言因果与跨情境稳定性;解释方差非越高越好。
- 红线:因子数、载荷等所有统计量由你在软件里算出,AI 只翻译、绝不代算或篡改——数字、因子数对不上时一律以软件输出为准。
自测清单(可保留逐项打勾)
- [ ] 我跑出了 KMO(最好≥.80)+ Bartlett p<.05 的前提检验通过,并知道 Bartlett 对大样本几乎必然显著、要以 KMO 为主。
- [ ] 我用主轴因子法提取,并能说清它与 PCA 的区别(共同方差 vs 全部方差)。
- [ ] 我用平行分析 / 碎石图 + 理论交叉判断因子数,没有只靠特征值>1。
- [ ] 我能按因子是否相关选择正交或斜交旋转,并在报告里写明所用旋转方法。
- [ ] 我的载荷表中题项归属清晰(|载荷|>.40 单一因子);交叉载荷(差值<.10)已处理且删题后重跑。
- [ ] 我能为每个因子据题项内涵命名,并清楚命名是主观赋予、不构成证据。
- [ ] 我清楚 EFA 是探索(看维度)、CFA 是验证(拟合理论模型并报告拟合指标),不会把 EFA 跑通说成"结构效度已验证"。
- [ ] 我所有统计量都在 Jamovi 亲手跑出,AI 只用来把输出翻译成 APA 段落,绝不代算。
✍️ 思考与练习
下列练习用于把本节概念用起来(区别于"本课交付物"里的任务),建议写在你的本地笔记中。
练习 1(原理辨析)。 有同学说:"我对 Anxiety 12 题跑 EFA,特征值>1 的因子有 4 个,所以这量表是 4 维的。"请用本课原理说明,为什么"仅凭特征值>1 就定 4 个因子"很可能不可靠?你会用哪些方法重新判断,并如何与该量表"认知/情感/回避"的三维理论相互印证?
好答案要点:指出 Kaiser 准则(特征值>1)系统性高估因子数,不能单独使用;应以平行分析为主、辅以碎石图拐点与理论三者交叉;若平行分析与碎石图都支持 3 个、第 4 个因子只含个别低载荷题,则应取 3 因子并据理论命名,而非迁就特征值多出来的那个。
练习 2(实操读表,紧扣 Case A)。 给定 Case A 的 Anxiety EFA 结果:KMO=.87、Bartlett χ²(66)=1842.34, p<.001、提取 3 因子、累计解释方差 46.5%,载荷如正文表(各题载荷 .65–.75、无交叉载荷)。请写出:① 为什么这组前提与结构可判定"适合且结构清晰";② Anxiety_4_R 为什么能和 Anxiety_1/2/3 落在同一因子;③ 这一结果能不能写成"本研究验证了量表的结构效度",为什么?
好答案要点:① KMO=.87 落"很好"档、Bartlett p<.001 拒绝单位阵(并补一句 Bartlett 对大样本必显著、以 KMO 为主),载荷均>.40 且无交叉、解释方差 46.5% 在社科可接受区间,故适合且结构清晰;②
Anxiety_4_R已按6−Anxiety_4反转,方向与同维题一致,故同载因子 1;③ 不能——EFA 是探索性证据,且若与后续 CFA 用同一份数据更不算独立验证,应表述为"支持预期三因子结构、为结构效度提供初步证据",严格验证需 CFA(最好折半或独立样本)。
练习 3(旋转选择 + 边界)。 你对 Anxiety 12 题做 EFA,斜交旋转(oblimin)给出的因子间相关为:认知↔情感 r≈.45、认知↔回避 r≈.38、情感↔回避 r≈.40。若你改用 Varimax 正交旋转来报告,会带来什么问题?正确做法是什么?这与"相关≠因果"是同一个问题吗?
好答案要点:三个因子间相关都在 .38–.45,明显不为 0,强行用正交旋转(假设因子独立)会低估/抹掉因子间的真实关联,结构表达失真;正确做法是保留斜交结果并报告因子间相关矩阵,并在论文写明旋转方法。这与"相关≠因果"不是同一问题:此处讨论的是"因子是否相关、该用何种旋转",并不涉及因果方向;因果的边界另见——EFA 只刻画相关结构,不证明任何因果。
练习 4(红线识别)。 你把 Case A 的原始 CSV 直接发给 AI,让它"帮我对 Anxiety 12 题做探索性因子分析,给出 KMO、特征值、旋转后载荷表,并写成结果段落"。它很快返回了一段格式完美、KMO 和载荷俱全的文字。请指出这一操作踩中了本课哪条红线,最可能的后果是什么,正确做法是什么?
好答案要点:踩中"让 AI 代算统计量"红线——大模型不接入数据、不做可信计算,给出的 KMO/特征值/载荷极可能是幻觉(看似合理实则编造),且无法复现;正确做法是先在 Jamovi 亲手跑出 EFA 的全部输出,再把输出粘给 AI 让它仅做翻译,并逐一比对数字、以软件输出为准;任何 AI 自行给出的统计量一律不可采信。
