我正在使用SPSS中的一些数据,我想要做的是以下内容:
比较两个字符串变量中的45个字母。如果它们相等,则将1放在另一个特定变量上,如果不是,则输入0。
以下是字符串变量的示例:
http://postimg.org/image/py3g2a26x/
以下是我正在尝试运行的部分代码:
COMPUTE #i = 1.
DO REPEAT Q = Q_CN_1 to Q_CN_45.
COMPUTE #a = substr(TX_RESPOSTAS_CN,#i,1).
COMPUTE #b = substr(DS_GABARITO_CN,#i,1).
DO IF (#a = #b).
COMPUTE Q = 1.
ELSE.
COMPUTE Q = 0.
END IF.
COMPUTE #i = #i+1.
END REPEAT.
然后我收到以下错误:
第11列中的错误#4309。文本:(命令结束)组合无效 分配中的数据类型。只能分配字符串 字符串变量。数字和逻辑数量可能只是 分配给数字变量。考虑使用STRING或NUMBER 功能。此命令未执行。
有人知道我做错了什么,怎么做对了?
谢谢!
答案 0 :(得分:2)
您需要定义要作为字符串匹配的临时变量。
STRING #A #B (a1).
COMPUTE #i = 1.
DO REPEAT Q = Q_CN_1 to Q_CN_45.
COMPUTE #a = substr(TX_RESPOSTAS_CN,#i,1).
COMPUTE #b = substr(DS_GABARITO_CN,#i,1).
DO IF (#a = #b).
COMPUTE Q = 1.
ELSE.
COMPUTE Q = 0.
END IF.
COMPUTE #i = #i+1.
END REPEAT.