在 SPSS 中自动格式化变量的循环

Loop for automated formatting of variables in SPSS

我有一个包含以下变量和相关格式的文件。

ID --> String
Var1_flag1 --> Numeric
Var2_flag2 --> Numeric
Var3_flag1 --> Numeric
Var4_flag3 --> Numeric
Var5_flag3 --> Numeric
Var6_flag3 --> Numeric
Var7_flag2 --> Numeric
Var8_flag2 --> Numeric
Var9_flag1 --> Numeric

我想根据变量名称中的正则表达式定义格式(而不是必须为每个列名称显式定义变量)。

例如,我希望名称中包含 flag1 的所有变量都格式化为 F10.3,将 flag2 格式化为 F10.2,将 flag3 格式化为 F10.1,所有不包含的列匹配这些条件以保留其现有格式。

您可以使用 spssinc select variables 根据您描述的属性创建变量列表,然后在您的语法中使用该列表。例如:

spssinc select variables macroname="!flag1" /properties pattern=".*flag1".
spssinc select variables macroname="!flag2" /properties pattern=".*flag2".
spssinc select variables macroname="!flag3" /properties pattern=".*flag3".
alter type !flag1 (F10.3) !flag2 (F10.2) !flag3 (F10.1) .