如何使用语法检查变量的度量(标称/标称/小数位数)?

时间:2018-06-26 01:41:58

标签: spss

我想使用语法找到变量的量度,然后在If语句中使用它。使用语法可以做到这一点吗?

例如,如果我有两个变量a(标称)和b(标称):

DO IF (a is nominal?)
...
END IF

1 个答案:

答案 0 :(得分:2)

您可以创建数据中所有名义变量的列表。在下面的示例中,列表将存储在宏调用!noms下:

SPSSINC SELECT VARIABLES MACRONAME="!noms" /PROPERTIES LEVEL=NOMINAL.
* now, for example you can run frequencies on all nominal variables.
freq !noms.

如果要转换所有名义变量,可以使用do repeat。例如:

do repeat NomVrs=!noms.
recode NomVrs ("cat2"="persian").
end repeat.

如果只想测试一个特定的变量(在此示例中称为AmInominal),则可以通过以下方式使用宏:

define DoIfNom ()
    !do !vr !in (!eval(!noms))
        !if (!vr="AmInominal") !then
               variable label AmInominal "this variable is indeed nominal".
               recode AmInominal ("cat2"="persian").
               frequencies AmInominal.
        !ifend
    !doend
!enddefine.

DoIfNom.