Ctables macro is spss



我有一个包含 100 个变量的表(我在这里只复制了 8 个作为示例),我想将其转换为一个宏,其中我只能插入第一个变量号 (1) 和最后一个变量 (100) 并运行这个表中只有一两行(而不是 100)。有谁知道该怎么做?

CTABLES
  /VLABELS VARIABLES=Loop1_a_01 var1 DISPLAY=DEFAULT
  /TABLE var1 [C][ROWPCT.COUNT F40.0] +
         var2 [C][ROWPCT.COUNT F40.0] + 
         var3 [C][ROWPCT.COUNT F40.0] + 
         var4 [C][ROWPCT.COUNT F40.0] + 
         var5 [C][ROWPCT.COUNT F40.0] +
         var6 [C][ROWPCT.COUNT F40.0] + 
         var7 [C][ROWPCT.COUNT F40.0] + 
         var8 [C][ROWPCT.COUNT F40.0]  BY Loop1_a_01 
  /CATEGORIES VARIABLES=Loop1_a_01 EMPTY=INCLUDE
  /CATEGORIES VARIABLES=var5 ORDER=A KEY=VALUE
  EMPTY=INCLUDE
  /TITLES TITLE= 'TV'

.

由于您对所有变量使用相同的统计数据,因此您可以通过分解重复的统计数据来简化 ctables 代码,例如,/TABLE (var1+var2+...)[行。计数 F40.0] 由 ...现在,如果要执行诸如在名称类似于 varnn 的数据集中包含所有变量之类的操作,则可以通过使用 SPSSINC SELECT VARIABLES 扩展命令来生成宏来自动执行此操作。 例如
SPSSINC SELECT VARIABLES MACRONAME="!myvars"
/属性模式 = "变量\d+"
/选项分隔符="+"。
马婉/TABLE (!myvars)[....

可以编写一个更复杂的宏来生成 !myvars,但是如果您需要强加额外的逻辑,使用 Python 可编程性生成它会容易得多。

最新更新