满足条件时在 SPSS 语法中强制报错
Force an error in SPSS Syntax when condition is met
我正在检查我的语法以查看是否所有字符串字段都有值。这看起来像这样:
IF(STRING ~= "").
现在,我不想过滤或计算变量,而是想在有没有值的字段时强制报错。我 运行 有很多这样的脚本,我不想继续手动检查数据集。相反,我只想收到一个错误并停止执行。
这在 SPSS 语法中可行吗?
首先,您可以使用 COUNT 有效地计算字符串变量中的空格:
COUNT 个空格 = A B C(" ")。
在其中列出要检查的字符串变量。因此,如果空白总和 > 0,则您希望引发错误。首先聚合到一个新的数据集并激活它:
DATASET DECLARE 总和。
聚合/输出文件=总和/计数=总和(空白)。
困难的部分是当空白计数大于 0 时让作业停止。您可以将作业放在语法文件中,然后 运行 使用带有 ERROR=STOP 的 INSERT 将其停止,或者您可以 运行 它作为生产作业通过实用程序或通过 spj(生产设施)作业命令行上的 -production 标志。
下面是如何根据条件生成错误。
DATASET ACTIVATE sum.
begin program.
import spssdata
curs = spssdata.Spssdata()
count = curs.fetchone()
curs.CClose()
if count[0] > 0:
spss.Submit("blank values exist")
end program.
DATASET CLOSE sum.
此代码读取聚合文件,如果空白计数为正,则发出无效命令导致错误,从而停止作业。
我正在检查我的语法以查看是否所有字符串字段都有值。这看起来像这样:
IF(STRING ~= "").
现在,我不想过滤或计算变量,而是想在有没有值的字段时强制报错。我 运行 有很多这样的脚本,我不想继续手动检查数据集。相反,我只想收到一个错误并停止执行。
这在 SPSS 语法中可行吗?
首先,您可以使用 COUNT 有效地计算字符串变量中的空格:
COUNT 个空格 = A B C(" ")。
在其中列出要检查的字符串变量。因此,如果空白总和 > 0,则您希望引发错误。首先聚合到一个新的数据集并激活它:
DATASET DECLARE 总和。
聚合/输出文件=总和/计数=总和(空白)。
困难的部分是当空白计数大于 0 时让作业停止。您可以将作业放在语法文件中,然后 运行 使用带有 ERROR=STOP 的 INSERT 将其停止,或者您可以 运行 它作为生产作业通过实用程序或通过 spj(生产设施)作业命令行上的 -production 标志。
下面是如何根据条件生成错误。
DATASET ACTIVATE sum.
begin program.
import spssdata
curs = spssdata.Spssdata()
count = curs.fetchone()
curs.CClose()
if count[0] > 0:
spss.Submit("blank values exist")
end program.
DATASET CLOSE sum.
此代码读取聚合文件,如果空白计数为正,则发出无效命令导致错误,从而停止作业。