量表的评价可以分为定性评价和定量评价,定性评价常用专家咨询法和 Delphi 法,定量评价一般包括量表的信度、效度和反应度。可以预见的是,这么多内容一篇文章肯定是说不完的,所以这将是一个系列,我会尽力用通俗易懂的语言把量表评价的内容说得完整、准确、具体。
一、量表评价是什么?为什么要做评价?
问卷法(主要是通过量表)是一种常见的实证研究方法,在医学/护理领域可以说无处不在,尤其是护理领域,干预性研究(比如患者自我报告结局)、观察性研究等多数原始研究都离不开问卷和量表的支持。
量表的来源无非就是三种:自己编制;汉化;直接用他人的量表。这些量表是拿来就能用吗?其实并不是,除了一些权威、经典的量表,很多量表都需要进行测评,于是各类量表评价方法应运而生,尤其是对于新编制或者汉化形成的量表,评价更是重中之重。
量表的定量评价本质是数据分析。借用温忠麟老师的话:“问卷(含量表)数据建模之前的工作,就像是一栋大楼的奠基工程,基础是否扎实,影响后续的工程质量”。
文章开篇时说了,定量评价包括量表的信度、效度和反应度。信度包括α系数、合成信度、最大信度、同质性系数、折半信度、重测信度等若干中,当前α系数、合成信度使用较多。效度也包括若干种指标和方法,比如:内容效度(由专家测评)、结构效度、校标关联效度(与权威量表进行相关分析)。
因子分析就是检测量表结构效度的主要方法,包括探索性因子分析、验证性因子分析。进行验证性因子分析时还可以计算聚合(收敛)效度、区分效度。这些指标中,少部分可以用SPSS软件完成,大部分需要使用mplus或Amos软件做,不过我研究后发现,R软件可以搞定绝大部分量表的定量评价。
扯远了,上面这些方法都会陆续在本系列文章中分享,本次先为大家介绍探索性因子分析并进行实操演示。
二、因子分析简介
想必大家对因子分析不陌生,因子分析又称因素分析,是常用的潜变量模型之一,在各学科领域都有广泛的应用。这里涉及一个很重要的名称:潜变量,在了解潜变量之前,先快速看看它的对立面:外显变量。
外显变量或观测变量(Observed Variable)是可以直接观测的变量,如个体在量表/问卷条目上的得分或度量计上的读数。外显变量可以是连续的、分类的或顺序的、计数的和名义的变量。举个通俗的例子,我们做问卷时的每个条目就是1个外显变量,因为它是可以直接通过计分算出来的。
潜变量(Latent Variable)通常是指不能直接观测的变量,需要借助外显的测量指标来估计。也许大家对潜变量比较陌生,但是如果换个词(注意不是等价)描述:维度,是不是就很熟悉了。我们使用过的很多量表都是有多个维度的(当然也有单维度量表)。
与潜变量类似的概念有很多,如建构(Constructs)、特质(Trait)和因子(Factor)等,这些概念经常替换使用,用于表达类似的意思。下面是常用的潜变量模型,其中的因素分析就是我们本期学习的因子分析。
来源:王孟成、毕向阳《潜变量建模与Mplus 应用(基础篇)》
三、探索性因子分析
一般来说,我们会先做探索性因子分析,再做验证性因子分析。探索性因子分析(Exploratory Factor Analysis,EFA)是一种统计方法,用于确定一组观测变量(也称为指标或问卷项)之间存在的潜在因子(即潜变量)。该方法旨在发现可以解释变量之间相关性的较少数量的潜在因子,并帮助简化数据集。探索性因子分析的过程通常包括以下几个步骤:
1. 数据准备:收集相关的观测变量数据,并确保数据的可靠性和有效性。通常,EFA要求变量之间具有相关性,可以通过KMO与Bartlett's Test分析该样本数据是否适合做因子分析。
2. 确定因子数量:确定需要提取的潜在因子的数量。常用的方法包括使用Kaiser准则(看特征值)、Cattell的平均特征值准则(模拟数据矩阵)、解释方差比例、碎石检验等。
3. 提取因子:使用因子提取方法(如主成分分析)从原始数据中提取潜在因子。这些因子是一组线性组合的变量,以解释观测变量之间的共变性。
4. 因子旋转:对提取的因子进行旋转,以使得每个因子更具解释性和可解释性。常用的旋转方法有方差最大旋转(Varimax)和极大似然旋转(Promax)等。前者属于正交旋转,默认各因子不相关;后者属于斜交旋转,允许各因子相关。
5. 因子解释和命名:通过研究因子载荷矩阵,确定哪些变量与哪个因子相关,并给这些因子命名。因子载荷值表示了变量与因子之间的相关性程度(本质也是相关系数)。最后还可以计算因子得分。
四、实操(基于R)
1、导入包与数据集
library(psych)
library(lavaan)
data(HolzingerSwineford1939)
没有安装psych和lavaan的请先安装(有疑问的可以加微信群与我联系)。Holzinger Swineford1939是lavaan包下的数据集,包含8、9年级学生的心理测验,301行,15列。实际需要使用的数据只有9列,分别命名为x1-x9。我们要做的就是从这些样本数据中抽取若干个因子。
2、预览数据并简单处理
View(HolzingerSwineford1939)
md= HolzingerSwineford1939[,7:15]
将第7:15列的数据提取出来,命名为md(m)。
3、检测是否适合做因子分析
# KMO与Bartlett's Test
library(performance) #未安装的请先安装
check_factorstructure(md) #Chisq(36) = 904.10, p < .001,KMO = 0.75
结果显示:Chisq(36)= 904.10, p
发表评论