【发布时间】:2019-08-13 09:04:36
【问题描述】:
我正在尝试使用 SPSS 语法程序对问卷进行评分。开发人员已为我提供了评分系统(以下参考资料),但无法使其运行。我对 STATA 比较熟悉,可以(最终)在那里重建,但我的同事使用 SPSS,所以没用!
如果有人能够发现 SPSS 语法(创建于 2007 年)中的错误,我将不胜感激。
抱歉,如果我呈现不正确!
特里斯坦
在下面的 cmets 之后添加!
我得到的错误实际上来自 E 部分 - 没有有效案例。出于某种原因,D 部分似乎无法正常工作 - 它不会生成 zscores。 F 部分给出了变量名不正确的警告。
再次感谢!
特里斯坦
背景:
管理和评分 该问卷旨在通过自我报告进行管理。如果通过邮政调查而不是亲自进行管理,则在进行邮政调查时应使用确保高回复率的标准技术,包括个性化信件、标准化说明和后续提醒信。 问卷提供如上所述的两个汇总分数。对于这两个分数,高值表示更好的结果。
项目反转和重新编码 三个项目(Q14、Q17 和 Q18)是反向评分的,因此高分表示更好的结果。这些项目重新编码如下:Q3(1=5、2=4、3=3、4=2、5=1、6=缺失); Q6(1=5、2=4、3=3、4=2、5=1); Q7(1=6、2=5、3=4、4=3、5=2、6=1)。 对于 Q4a,0(“我不工作”)的响应被重新编码为缺失。
输入缺失数据 缺失数据根据推荐用于评分 SF-36 的相同算法进行估算。如果受访者回答了量表中至少 50% 的项目,则会对任何缺失的项目进行个人估计。
创建汇总分数 在许多问卷中,通过简单地将对量表中问题的回答相加,或者在某些情况下,通过取回答的平均值或平均值来创建汇总分数。然而,这种方法不适合在这种情况下使用,因为汇总量表由具有不同数量的响应类别的问卷项目组成。在这种情况下,简单地将原始分数相加在方法上是不合理的。
用于创建汇总量表分数的标准方法使用 z 分数等效项或原始分数的转换。原始分数转换为标准 z 分数,然后可以将其相加以形成汇总量表。为了最小化缺失数据的影响,使用平均 z 分数而不是总 z 分数。这是基于每个项目的 z 分数转换的总和除以量表中的项目数。用于计算汇总量表分数的程序基于汇总量表中项目的 z 分数的平均值,允许包含 50% 或更少缺失数据的问卷。
汇总量表分数,是 n 的总和(其中 n 是量表中非缺失项目的数量)正态分布变量,每个变量的平均值为 0 和标准差为 1,正态分布的平均值为 0 和标准差√n.因此,需要将这些汇总量表分数进一步转换为标准 z 分数。
由于将原始分数转换为 z 分数会产生难以解释的负分数,因此将 z 分数转换为 T 分数以进行报告。 T 分数基于 50 的平均值和 10 的标准差,以给出易于理解的分数范围。
参考资料 1. VEINES 集团的 Lamping DL,Schroter S。测量腿部慢性静脉疾病的生活质量和症状:VEINES-QOL/VEINES-SYM 问卷的发展和心理测量评估。向麦吉尔大学报告,1998 年。 2. Lamping DL、Schroter S、Kurz X、Kahn SR、Abenhaim L. 评估腿部慢性静脉疾病的结果:制定科学严谨、患者报告的症状和生活质量测量方法。血管外科杂志 2003;37(2):410-19。 3. 迪尔曼 DA。邮件和电话调查:总体设计方法。纽约:威利,1978 年。 4. Ware JE、Snow KK、Kosinski M、Gandek B. SF-36 健康调查:手册和解释指南。波士顿:健康研究所,新英格兰医学中心,1993 年。 5.洁具 JE,科辛斯基 M,凯勒 SD。 SF-36 身心健康综合量表:用户手册。波士顿:健康研究所,新英格兰医学中心,1994 年。 6. Streiner DL,诺曼 GR。健康测量量表:开发和使用实用指南(第 2 版)。牛津:牛津大学出版社,1995 年。
VEINES-QOL SPSS 评分程序
第一部分: 定义变量标签并重新编码超出范围的分数
B 部分: 以相同的方式重新编码要测量的特定变量。低分 = 身体不好。
C 部分: 将所有原始分数转换为 Z 分数
D 部分: 如果患者回答了量表中至少 50% 的问题,则创建量表分数。
E 部分: 将量表分数(通常以 0 的平均值和 SQRT(N) 的标准差分布,其中 N 是非缺失响应的数量)转换为 Z 分数(即,通常以 0 的平均值和标准差1)
F 部分: 创造 T 分数(平均 50,标准差 10)
A部分
COMMENT PART A.
VARIABLE LABELS q1a 'Heavy legs' .
VARIABLE LABELS q1b 'Aching legs ' .
VARIABLE LABELS q1c 'Swelling' .
VARIABLE LABELS q1d 'Night cramps' .
VARIABLE LABELS q1e 'Heat or burning sensation' . VARIABLE LABELS q1f 'Restless legless' . VARIABLE LABELS q1g 'Throbbing' .
VARIABLE LABELS q1h 'Itching' .
VARIABLE LABELS q1i 'Tingling sensation' .
VARIABLE LABELS q3 'Compared to one year ago how would you rate your leg problem' . VARIABLE LABELS q4a 'Daily activities at work' .
VARIABLE LABELS q4b 'Daily activities at home' .
VARIABLE LABELS q4c 'Standing for long periods' .
VARIABLE LABELS q4d 'Sitting for long periods' .
VARIABLE LABELS q5a 'Cut down time spent on work' .
VARIABLE LABELS q5b 'Accomplished less' .
VARIABLE LABELS q5c 'Limited in kind of work' .
VARIABLE LABELS q5d 'Difficulty performing work' .
VARIABLE LABELS q6 'Interference with normal social activities' .
VARIABLE LABELS q7 'Intensity of leg pain' .
VARIABLE LABELS q8a 'Concerned about appearance of leg(s)' .
VARIABLE LABELS q8b 'Felt irritable' .
VARIABLE LABELS q8c 'Felt a burden' .
VARIABLE LABELS q8d 'Worried about bumping into things' .
VARIABLE LABELS q8e 'Appearance of leg(s) influenced choice of clothing' .
VARIABLE LABELS q2 'Time of day leg problem most intense' .
RECODE
q1a q1b q1c q1d q1e q1f q1g q1h q1i q6 (1=1) (2=2) (3=3) (4=4) (5=5) (ELSE=SYSMIS) .
EXECUTE .
RECODE
q2 q3 q7 q8a q8b q8c q8d q8e (1=1) (2=2)
(3=3) (4=4) (5=5) (6=6) (ELSE=SYSMIS) . EXECUTE .
RECODE
q4a (0=0) (1=1) (2=2) (3=3) (ELSE=SYSMIS) .
EXECUTE .
RECODE
q4b q4c q4d (1=1) (2=2) (3=3) (ELSE=SYSMIS) .
EXECUTE .
RECODE
q5a q5b q5c q5d (1=1) (2=2) (ELSE=SYSMIS) .
EXECUTE .
B部分
COMMENT PART B.
RECODE
q3 (6=SYSMIS) (1=5) (2=4) (4=2) (5=1) .
EXECUTE .
RECODE
q6 (1=5) (2=4) (4=2) (5=1) .
EXECUTE .
RECODE
q7 (1=6) (2=5) (3=4) (4=3) (5=2) (6=1) .
EXECUTE .
RECODE
q4a (0=SYSMIS) .
PART B
EXECUTE .
C部分
COMMENT PART C.
DESCRIPTIVES
VARIABLES=q1a q1b q1c q1d q1e q1f q1g q1h q1i q2 q3 q4a q4b q4c q4d q5a q5b q5c q5d q6 q7 q8a q8b q8c q8d q8e /SAVE
/STATISTICS=MEAN STDDEV MIN MAX .
D部分
COMMENT PART D.
* VEINES-SYM SCALE
RECODE
zq1a zq1b zq1c zq1d zq1e zq1f zq1g zq1h zq1i zq7 (SYSMIS=0).
EXECUTE .
COUNT score1 =zq1a zq1b zq1c zq1d zq1e zq1f zq1g zq1h zq1i zq7 (0) .
EXECUTE .
COMPUTE denom1= (10 - score1) .
EXECUTE .
IF (denom1 >= 5) zsympmn = (zq1a + zq1b + zq1c + zq1d + zq1e + zq1f + zq1g + zq1h + zq1i + zq7) / denom1 .
EXECUTE .
* VEINES-QOL SCALE
RECODE
zq1a zq1b zq1c zq1d zq1e zq1f zq1g zq1h zq1i zq3
zq4a zq4b zq4c zq4d zq5a zq5b zq5c zq5d zq6 zq7 zq8a zq8b zq8c zq8d zq8e (SYSMIS=0).
EXECUTE .
COUNT
score3 =zq1a zq1b zq1c zq1d zq1e zq1f zq1g
zq1h zq1i zq3 zq4a zq4b zq4c zq4d zq5a zq5b zq5c
zq5d zq6 zq7 zq8a zq8b zq8c zq8d zq8e (0) .
EXECUTE .
COMPUTE denom3 = (25 - score3) .
EXECUTE .
IF (denom3 >= 13) zvqolmn = (zq1a + zq1b + zq1c + zq1d + zq1e + zq1f + zq1g + zq1h + zq1i + zq3 + zq4a + zq4b + zq4c + zq4d + zq5a + zq5b + zq5c + zq5d + zq6 + zq7 + zq8a + zq8b + zq8c + zq8d + zq8e) /denom3 .
EXECUTE .
RECODE
zq1a zq1b zq1c zq1d zq1e zq1f zq1g zq1h zq1i zq7 zq2
zq3 zq4a zq4b zq4c zq4d zq5a zq5b zq5c zq5d zq6 zq8a zq8b
zq8c zq8d zq8e (0=SYSMIS) .
EXECUTE .
E部分
COMMENT PART E.
DESCRIPTIVES VARIABLES=ZSYMPMN (ZSYMSCOR),ZVQOLMN (ZQOLSCOR)/ STATISTICS=MEAN,STDDEV,MIN,MAX.
EXECUTE.
DESCRIPTIVES VARIABLES=ZSYMSCOR,ZQOLSCOR.
F部分
COMMENT PART F.
COMPUTE TVSYM = 50 + (zsymscor * 10) .
EXECUTE .
COMPUTE TALL = 50 + (zqolscor * 10) .
EXECUTE .
VARIABLE LABELS tvsym 'VEINES-SYM score' .
VARIABLE LABELS tall 'VEINES-QOL score' .
DESCRIPTIVES
VARIABLES=tvsym tall
/STATISTICS=MEAN STDDEV MIN MAX .
【问题讨论】:
-
欢迎来到 Stack-Overflow!我愿意提供帮助,但坦率地说,我不会阅读四个屏幕的文本来做到这一点 - 请用简短的解释(如果需要)来缩小范围,说明你正在做的得分,请发布你收到的错误消息,并且当你得到它时(在运行语法中的哪一行之后。另外请尝试删除所有与错误无关的语法。
-
在将语法编辑为代码格式时,我发现了一些简单的问题,这些问题会给您错误消息:(1)
execute命令与前一个命令出现在同一行(A 部分靠近end), (2)PART B出现在几乎在 B 部分末尾的行首, (3) D 部分中注释的行 (*) 在行尾没有句点. -
谢谢。我会调整的。
-
我得到的错误实际上来自 E 部分 - 没有有效案例。出于某种原因,D 部分似乎无法正常工作 - 它不会生成 zscores。 F 部分给出了变量名不正确的警告。
-
据我所见,zscores 应该在 C 部分创建,而不是 D 部分(在
descriptives /save命令中。如果您的数据为空(如错误消息所示),则没有 zscores创建,然后寻找不存在的 Zscores 的进一步命令会给你关于不正确的变量名称的消息。