如何在SPSS中重新创buildExcel的“索引(,,匹配())”function?

我正在尝试在SPSS中重新创buildExcel的“索引(,,匹配())”函数。 我的数据组织如下:

在这里输入图像说明

“位置”variables指示了“值”variables应该去的列(T:V)。

在第一行中,位置依次为1-3,因此T:V列中的值与“值”variables的顺序相同。

第二排位置是2,3,1; 所以“Value1”中的值应该在U列(最后一个variables块中的第二列)中出现,“Value2”中的值应该出现在列V中,而“Value 3”中的值应该出现在列T中。等等。

在SPSS中进行调查之后,SPSS的索引和匹配function将无济于事。

是否有任何Excel / SPSS用户知道如何在SPSS中使用语法来完成此操作?

可能有几种方法可以解决这个问题,具体取决于你处理了多less列,是全是数字还是有string(可能有matrix代数的答案,我想不出来)。

如果你只有3组3列,最简单的方法是写9(3 * 3)if语句(你没有列T / U / V的列名,所以我只是参考他们的Excel柱):

if (Position1 = 1) T = Value1. if (Position1 = 2) T = Value2. if (Position1 = 3) T = Value3. if (Position2 = 1) U = Value1. if (Position2 = 2) U = Value2. ... 

这应该工作。 如果您有更多的列,您也可以使用向量循环来定义variables集。

这是一个可扩展的方法:

 vector match(3). do repeat p = position1 to position3 / v= value1 to value3 / y = #y1 to #y3. compute y = v*p. end repeat. loop #i = 1 to 3. compute match(#i) = any(#i, #y1 to #y3). end loop. exe.