我已经人为操纵以下数据来理解SPSS
中的循环命令。
JYEAR POSITION
89
89 2
89 1
2
1
99 1
99
99 2
BLANK SPACE DENOTE MISSING VALUE
。
我走下了语法:
DO IF (JYEAR GT 90).
COMPUTE BONUS=0.
ELSE IF (POSITION EQ 1).
COMPUTE BONUS=.75.
END IF.
EXECUTE.
我支持我会得到以下结果:
JYEAR POSITION BONUS
89
89 2
89 1 .75
2
1 .75
99 1 0
99 0
99 2 0
但我得到以下WARNING
:
Warning # 142. Command name: EXECUTE
LOOP has no effect on this command.
Error # 4095. Command name: EXECUTE
The transformations program contains an unclosed LOOP, DO IF, or complex file
structure. Use the level-of-control shown to the left of the SPSS Statistics
commands to determine the range of LOOPs and DO IFs.
Execution of this command stops.
答案 0 :(得分:0)
发布的代码不会产生该错误消息。你有一个包含未显示的代码的外部循环吗?
另请注意,EXECUTE命令是多余的。它只会导致不必要的额外数据传递。
答案 1 :(得分:0)
我不知道为什么会发生这种情况,但这不是由于外部循环问题,因为我也遇到过这种情况,在我的情况下,没有外环。这是整个共享代码。所以SPSS能够做到这一点。
简单地省略EXECUTE命令导致了我的正确结果,只需要运行挂起的转换。完全不明白为什么EXECUTE会导致这样的问题,并且无法找到任何理由。