【问题标题】:Pipe character ignored in SPSS syntaxSPSS 语法中忽略的管道字符
【发布时间】: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


【解决方案1】:

原来(根据 SPSS 支持)这是一个特定于版本(版本 21)的错误,并在以后的版本中得到了修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 2019-07-18
    • 1970-01-01
    • 2014-11-21
    • 1970-01-01
    • 2019-05-04
    相关资源
    最近更新 更多