Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops 使用循环在SPSS中创建指标变量_Loops_Variables_Syntax_Spss - Fatal编程技术网

Loops 使用循环在SPSS中创建指标变量

Loops 使用循环在SPSS中创建指标变量,loops,variables,syntax,spss,Loops,Variables,Syntax,Spss,我试图使用循环在SPSS中创建一些指标变量 我想创建17个新变量ABA(1-17),如果BA(1-17)等于1,它的值为1。我试着说: VECTOR ABA(17). LOOP #i = 1 to 17. IF(BA(#i)=1) ABA(#i) = 1. END LOOP. EXECUTE. 不幸的是,这只会创建缺少值的变量。上面的代码是否只需要稍作调整,或者它们是完成变量创建的更有效的方法?我认为您需要将BA变量集定义为向量,然后才能在代码中引用它们。因此,请尝试: VECTOR ABA(

我试图使用循环在SPSS中创建一些指标变量

我想创建17个新变量ABA(1-17),如果BA(1-17)等于1,它的值为1。我试着说:

VECTOR ABA(17).
LOOP #i = 1 to 17.
IF(BA(#i)=1) ABA(#i) = 1.
END LOOP.
EXECUTE.

不幸的是,这只会创建缺少值的变量。上面的代码是否只需要稍作调整,或者它们是完成变量创建的更有效的方法?

我认为您需要将
BA
变量集定义为向量,然后才能在代码中引用它们。因此,请尝试:

VECTOR ABA(17) /BA=BA1 to BA17.
LOOP #i = 1 to 17.
IF(BA(#i)=1) ABA(#i) = 1.
END LOOP.
EXECUTE.

注意,如果数据集中已经存在
BA
变量,则不能将其引用为
向量BA(17)!我确实试过“向量BA(17)”,但它不起作用。我不知道为什么
SPSS
不允许这样做,但它也让我感到困扰,尤其是当变量不符合顺序时。如果不是,我倾向于跳转到python寻求一个解决方案……它在处理这些类型的动态方面会更好。@JinneshSutar你知道有什么好的在线资源解释如何在SPSS中创建循环和向量吗?实际上你不需要在这里循环<代码>将ABA1到ABA17(1=1)(ELSE=SYSMIS)重新编码为BA1到BA17。
将产生相同的结果。一般来说,当需要使用一长串非连续变量时,STATS SELECT variables(实用程序>定义变量宏)扩展命令通常会有所帮助。它定义一个宏,列出由元数据(如名称中的模式)选择的变量。在本例中,它可能类似于SPSSINC SELECT VARIABLES MACRONAME=“!BA”/PROPERTIES PATTERN=“BA”。该宏可以在接受变量列表的任何地方使用。还可以指定类型等其他属性。