【发布时间】:2019-01-31 19:42:52
【问题描述】:
我正在尝试使用竖线字符“|”在 SPSS 语法中出现奇怪的结果:
语法如下:
但是当我将这一行从语法窗口复制到这里时,这就是我得到的:SELECT IF(SEX = 1 SEX = 2).
管道就消失了!
如果我运行这一行,这是输出:
选择 IF(性 = 1 性 = 2)。
第 20 列中的错误 #4007。文本:SEX 表达不完整。检查丢失的操作数、无效的运算符, 不匹配的括号或过长的字符串长度。 此命令的执行停止。
所以管道对程序也是不可见的!
当我保存这个语法并重新打开它时,管道消失了......
我发现让 SPSS 使用管道的唯一方法是编辑语法(添加管道)并将其保存在替代编辑器中(在本例中为 notepad++)。现在,在不打开语法的情况下,我使用 insert 命令从另一种语法运行它,它工作了。
编辑:一些背景信息: 我有 64 位的 spss 版本 23(+service pack 3)。 如果我使用我的语言环境(编码:windows-1255)或 Unicode(编码:UTF-8),也会发生同样的事情。怀疑我的希伯来语键盘,我尝试从网上复制语法,结果相同。
任何人都可以对这个主题有所了解吗?
【问题讨论】:
-
屏幕截图中的管道字符看起来很奇怪。由于您使用的是 windows-1255 编码,我怀疑您输入了希伯来语标点符号 Paseq(Unicode 中的 U+05C0)而不是垂直线(U+007C)。如果您运行代码,则 paseq 不会被解释为有效的运算符,并且 spss 会返回错误。我不清楚为什么角色在保存后会从文件中消失。可能与选择的语言环境书写系统、语言环境设置、双向文本设置有关?或者它可能是与不同编码之间的转换相关的错误。您是否安装了最新的修复包?
标签: spss