在 SPSS 中使用 IF 条件连接 Valuelabels

问题描述 投票:0回答:1

我从另一个问题的回答中创建了 15 个变量。如果他们以某种方式回答问题,则为 1,否则为 SYSMIS。我还有一个名为 ValuesCount 的列。如果 15 个变量只有 1 个输入,我只是将 ValuesCount 标记为该变量的标签。现在我需要弄清楚如果选择了多个标签,如何组合所有标签。 ValuesCount 字段中可以有 1-15。我认为 Concat + ValueLabel 会得到答案,但我已经尝试了几种方法,但似乎无法让它发挥作用。这是我开始玩的代码,看看我是否能弄明白,但没有运气。


* Define variable labels (headers).
VARIABLE LABELS Var1 'Variable 1 label'.
VARIABLE LABELS Var2 'Variable 2 label'.

* Concatenate headers with IF statement.
COMPUTE ConcatHeaders = STRING('Variable 1: ', Var1) + IF (Var1 > 2) STRING(' (Greater than 2)') ELSE '' END IF + ', Variable 2: ' + STRING(Var2).

* Show variable labels and concatenated headers.
EXECUTE.
syntax spss
1个回答
0
投票

下面的循环会创建你想做的变量,解决文开头的“+”问题:

String bought(A120).
String plus(A1).
do repeat vrnm=SeekersMatch FrugalMatch CreativesMatch
         /vrlb='SeekersMatch' 'FrugalMatch' 'CreativesMatch'.
   if bought<>"" plus="+".
   if vrnm bougt=concat(rtrim(bougt), plus, vrlb).
end repeat.
© www.soinside.com 2019 - 2024. All rights reserved.